中易网

delphi调用Oracle存储过程,提示列不存在错误!

答案:3  悬赏:0  
解决时间 2021-11-09 05:49
  • 提问者网友:迷茫庸人
  • 2021-11-08 06:18
create or replace procedure aaaaa1 (
p_user_id_i in varchar2,
o_cur out sys_refcursor
)
as
begin
open o_cur for select * from emp where emp.empno = p_user_id_i;
end aaaaa1;

ADOQuery1.Close;
ADOQuery1.Parameters.Clear;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('{call aaaaa1(?)}');
ADOQuery1.Parameters.CreateParameter('p_user_id_i',ftString,pdInput,255,NULL);

ADOQuery1.Parameters.ParamByName('p_user_id_i').Value:='7369';
ADOQuery1.ExecSQL;
open也不行,烦!
之前在PL/SQL Developer的SQL窗口调用call aaaaa1('7369');可以运行,现在提示错误:ORA-06553: PLS-306: wrong number or types of arguments in call to 'AAAAA1'
最佳答案
  • 二级知识专家网友:厭世為王
  • 2021-11-08 06:40
用adostoredproc控件,不要用adoquery。
全部回答
  • 1楼网友:初心未变
  • 2021-11-08 09:05
不要用adoquery
  • 2楼网友:时光不老我们不分离
  • 2021-11-08 07:35
你好! 用adostoredproc控件,那是个存储过程 希望对你有所帮助,望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息