Dephi调用oracle存储过程遇到的问题!!!
采用DBEXPRESS的TSQLStoredProc和TClientDataSet来执行Oracle的存储过程来返回结果集.
以下代码在按钮事件中执行:
DM_Find2.cds_ydhz.Params.Clear;
DM_Find2.cds_ydhz.Params.CreateParam(ftString, 'startdate', ptInput);
DM_Find2.cds_ydhz.Params.CreateParam(ftString, 'enddate', ptInput);
DM_Find2.cds_ydhz.Params.CreateParam(ftCursor, 'rc', ptOutput);
DM_Find2.cds_ydhz.Params.ParamByName('startdate').Value := FormatDateTime('yyyymmdd',StrToDate(StartDate));
DM_Find2.cds_ydhz.Params.ParamByName('enddate').Value := FormatDateTime('yyyymmdd',StrToDate(EndDate));
//DM_Find2.sqldst_ydhz.Close;
DM_Find2.cds_ydhz.close;
//DM_Find2.sqldst_ydhz.Open;
DM_Find2.cds_ydhz.Open;
第一次执行正常,再次执行时报错:
ORA-06550: line 2, column 3:
PLS-00306: wrong number or types of arguments in call to 'FIND_YDHZ'
ORA-06550: line 2, column 3:
PL/SQL: Statement ignored.
存储过程经测试没问题,而且报错时,存储过程执行正常.经测试发现,打开sqldst_ydhz时正常,是在打开cds_ydhz时报错.
期待高手的指点,非常感谢!!!