读书人

delphi里ADOStoresProc调用Oracle存储

发布时间: 2013-03-26 21:10:04 作者: rapoo

delphi里ADOStoresProc调用Oracle存储过程报错
create or replace procedure UP_ACIC_UPDATECONSREADFLAG (arg1 in number, arg2 in varchar2) AUTHID current_user
is
begin
update R_IC_POWER_BUY set READ_FLAG=arg2 where BUY_ID=arg1;
commit;
end;
这个在PL/SQL里能运行
declare
arg1 number(16) :=1;
arg2 varchar2(8):='1';
begin
up_acic_updateconsreadflag(arg1,arg2);
end;
一切正常。但在delphi里就报错怎么回事?
procedure TForm1.btn1Click(Sender: TObject);
var
arg1:real;
arg2:string;
begin
arg1:=1;
arg2:='1';
ADOSP.ProcedureName:= 'UP_ACIC_UPDATECONSREADFLAG ';
ADOSP.Parameters.Clear;
ADOSP.Parameters.CreateParameter( 'arg1 ',FtFloat,Pdinput,16,arg1);
ADOSP.Parameters.CreateParameter( 'arg2 ',FtString,Pdinput,8,arg2);
try
ADOSP.ExecProc;
except
showmessage('更新失败!');
end;

end;提示未指定的错误,请高手指点指点,急。。。。


[解决办法]
未指定的错误,有没有Oracle的错误码,根据错误码查一下说明
问题可能有四个位置,DB、DB Provider(驱动程序)、ADO、delphi的ADO控件
[解决办法]
有可能连接设置问题
[解决办法]
ADOStoresProc的Connection有没有连接ADOConnection
或者ADOStoresProc的ConnectionString有没有设置错误

我的异常网推荐解决方案:oracle存储过程,http://www.myexception.cn/oracle-develop/177537.html

读书人网 >.NET

热点推荐