delphi 中 使用ADOQuery 如何执行已有的存储过程
delphi中使用ADOQuery如何执行已有的存储过程如何给存储过程传参数并且获得存储过程的返回值。存储过程中是用return返回参数还是用@result??...
delphi 中 使用ADOQuery 如何执行已有的存储过程
如何给存储过程传参数 并且获得 存储过程的 返回值。
存储过程中 是用return返回参数 还是用 @result?? 展开
如何给存储过程传参数 并且获得 存储过程的 返回值。
存储过程中 是用return返回参数 还是用 @result?? 展开
3个回答
推荐于2018-05-10 · 知道合伙人互联网行家
关注
展开全部
建立proc
create proc MyABC @a int ,@b int, @c int output
as
set @c=@a*@b
在SQL中执行:
declare @a int,@b int,@c int
set @a=250
set @b=40
exec MyABC @a,@b,@c output --注意要添加output 关键字!
select @c
在D中:
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(‘execute MyABC :a,:b,:c output‘);//也要添加output 关键字!
ADOQuery1.Parameters.ParamByName(‘a‘).Value:=250;
ADOQuery1.Parameters.ParamByName(‘b‘).Value:=40;
ADOQuery1.ExecSQL;
showmessage(ADOQuery1.Parameters.ParamByName(‘c‘).Value);
create proc MyABC @a int ,@b int, @c int output
as
set @c=@a*@b
在SQL中执行:
declare @a int,@b int,@c int
set @a=250
set @b=40
exec MyABC @a,@b,@c output --注意要添加output 关键字!
select @c
在D中:
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(‘execute MyABC :a,:b,:c output‘);//也要添加output 关键字!
ADOQuery1.Parameters.ParamByName(‘a‘).Value:=250;
ADOQuery1.Parameters.ParamByName(‘b‘).Value:=40;
ADOQuery1.ExecSQL;
showmessage(ADOQuery1.Parameters.ParamByName(‘c‘).Value);
展开全部
ADO里有TADOStoredProc 专门执行存储过程用的啊
参数分为输入和输出两种 看一看就知道了
参数分为输入和输出两种 看一看就知道了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
adoqyuery.sql.add(exec 存储过程)
adoquery.execsql;
adoquery.execsql;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询