用ADOQquery怎样返回OUTPUT的值呢?AQquery.SQL.Clear;
AQquery.SQL.Add('declare @id int , @classid int');
AQquery.SQL.Add('exec @id=DO_ProcFLqtclass '''+qtclass+''',@classid output select @classid');
AQquery.ExecSQL;结果是想将存储过程中的返回值classid再赋给一个变量,如:
id:=AQquery.parameters.parambyname('@classid').value;但是这样不行提示没有@classid
这句该如何写呢?不知道在Delphi中用ADOQuery执行存储存程序后怎样将OUTput的值赋给Delphi中的一个变量呢?
AQquery.SQL.Add('declare @id int , @classid int');
AQquery.SQL.Add('exec @id=DO_ProcFLqtclass '''+qtclass+''',@classid output select @classid');
AQquery.ExecSQL;结果是想将存储过程中的返回值classid再赋给一个变量,如:
id:=AQquery.parameters.parambyname('@classid').value;但是这样不行提示没有@classid
这句该如何写呢?不知道在Delphi中用ADOQuery执行存储存程序后怎样将OUTput的值赋给Delphi中的一个变量呢?
解决方案 »
- 好奇怪的问题 大家帮帮忙
- DBImage1.picture.loadfromfile(...)出錯
- 这个监听程序如何实现?
- 怎样设 TStringList 对象的大小?
- FreeNotification此方法的含义是什么
- 有谁做过关于商品保质期方面的程序吗?具体么样做最好,大家给个建议。谢谢,散分。
- 中国第1套色请图像识别软件,能卖多少钱?
- VB程序员转Delphi应该注意什么(请指教)
- VirtualTrees控件的两个事件怎么用(vsttreeLoadNode,vsttreeSaveNode)为什么我的代码提示内存溢出
- 关于设置变量的一个很菜的问题!!!!!
- IdDNSResolver1.ClearVars以及IdDnsResolver1.DNSHeader如何在Indy9中实现(得到)?
- 请问数据字典怎么做呀,我是用ACCESS做的数据库,谢谢拉
@lsh varchar(6) output
as
declare @i int,@len int
update sys_lsh
set lsh=lsh+1
select @lsh=cast(lsh as varchar(6))
from sys_lshset @len=6-len(@lsh)
set @i=0
while @i<@lsh
begin
set @lsh='0'+@lsh
set @i=@i+1
end
select @lsh
GO
取得返回值:
Edit1.text := ADOStorcedProc.parameters.parambyname('@lsh ').value;
@Str VarChar(200),
@classid int OutPut
AS
begin tran a
Select @classid=id From class where class= @Str
GO-----------------------------------在delphi中通过调用存储过程TEST,代码:
var
id:integer;
begin
with ADOStoredProc1,Parameters do
begin
Close;
ProcedureName := 'Test;1';
Refresh;
ParamByName('@Str').Value := 'pmc'; //输入参数
ExecProc;
id:=ParamByName('@classid').Value; //存储过程输出参数的值
end;
end; 这样做不行无法返回classid呀!