怎样得到存储过程的反回值?(10分)

T

tt123tt

Unregistered / Unconfirmed
GUEST, unregistred user!
CREATE procedure proc3 (@p1 char(10),@p2 char(10)) as
insert into tt1 (aa,bb) values (@p1,'2222')
insert into tt2 (cc,dd) values (@p2,'5555')
select * from tt1
RETURN @p1
GO
在FORM1的LABEL1里要显示这个存储过程的反回值,怎样得到这个值?
  


 
要定义P1为in out格式,然后在procedure运行结束后,取变量p1的值就可以了。
 
to armyjiang
 能不能具体一点,反回的不一定是传 进来的参数呀,
有可能是在过程里计算得到的得到的呀,然后在FORM1里怎样输出反回值?
能不能写出规范的例了出来?谢谢!
 
存储过程没问题,
调用后,从DataSet的数据集参数中取!!!
 
CREATE OR REPLACE
Procedure CLJL2RECEIPT
( DateBegin IN char default '0001-01-01',
DateEnd IN char default '9999-12-31',
DelRec IN char default 'Y', ReturnVal OUT Integer)
IS
begin
...
end;


ReturnVal := 0;
procCljl2Receipt.ParamByName('DATEBEGIN').Value :=
FormatDateTime('yyyy-mm-dd',dtPickStart.Date);
procCljl2Receipt.ParamByName('DATEEND').Value :=
FormatDateTime('yyyy-mm-dd',dtPickEnd.Date);
if chkboxDelRec.Checked then
procCljl2Receipt.ParamByName('DELREC').Value := 'Y'
else
procCljl2Receipt.ParamByName('DELREC').Value := 'N';
procCljl2Receipt.ExecProc;
ReturnVal := procCljl2Receipt.ParamByName('RETURNVAL').Value;

 
顶部