关于ADO连接存储过程问题 ( 积分: 100 )

  • 主题发起人 主题发起人 ldc5562
  • 开始时间 开始时间
L

ldc5562

Unregistered / Unconfirmed
GUEST, unregistred user!
用ADO组件连接存储过程,存储过程的返回值如何接受?????最好给段代码,谢谢啦
 
数据库里面的存储过程加个输出参数;
然后delphi里 ExeSQL后,他自动会返回输出参数;
int: n := ADO.Parameters.ParamByName('输出参数名').asinteger ;
string: s:=ADO.Parameters.ParamByName('输出参数名').asstring;
 
if exists(select 1 from sysobjects where id= object_id('cp_xxx')and type= 'p')
drop procedure cp_xxx
go
create procedure cp_xxx
@rs varchar(50) output
as
set @rs = 'lionheart'
go


procedure TForm1.Button1Click(Sender: TObject);
begin
with ADOQuery1 do
begin
close;
sql.Text:= 'declare @rs varchar(50) exec cp_xxx @rs output select @rs';
Open;
Edit1.Text:= Fields[0].AsString;
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ADOStoredProc1.ExecProc;
Edit1.Text:= ADOStoredProc1.Parameters[0].Value;
end;
 
用自定义函数。
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
916
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部