我在oracle中编写了一个存储过程来检查天气,因为输入文件名存在于定义的路径中。它工作正常。当我在power-builder 12.0中调用此过程时,我测试了这样。我第一次输入错误的文件名,它工作正常。然后我输入了正确的文件名,它说程序已经执行。我怎样才能再次重新执行此过程。我在代码中声明程序的代码是
DECLARE PROC_FILE_EXISTS PROCEDURE FOR
HICSWIN_ORACLE.PACK_UPDATE_TSHML_HICSWIN20.PROC_CHECK_FILES_RELEVANCE
(
FILE_NAME => :as_file_name
) ;
EXECUTE PROC_FILE_EXISTS;
IF SQLCA.SqlCode < 0 THEN
MessageBox('eroor',SQLCA.SQLErrText)
MessageBox('Connection failed','An error occured while connecting to database, please contact your administrartor')
RETURN 0
end if
仅供参考我正在使用带有oracle 11g的Windows 7
答案 0 :(得分:4)
您需要关闭过程调用(以类似于游标的方式使用:Declare
/ Open
/ Fetch
/ Close
):
close PROC_FILE_EXISTS;
答案 1 :(得分:1)
从数据存储区调用它。使用存储过程源和字符串检索参数创建新的dw。 PB自动包含所有适当的游标语法。调用Oracle SP可能会更复杂 - 我相信你必须返回一个引用游标来从dw调用一个...