社区
Delphi
帖子详情
用adoquery如何接收存储过程的返回值啊?
aybc
2003-10-31 06:46:14
这是我用的语句,为什接收不到呢?
close;
sql.Clear;
adoquery1.SQL.Add('aaaa');
adoquery1.Parameters.Refresh;
adoquery1.ExecSQL;
edit1.Text:=vartostr(adoquery1.Parameters.ParamByName('@avg').Value);
谢谢。
...全文
122
7
打赏
收藏
用adoquery如何接收存储过程的返回值啊?
这是我用的语句,为什接收不到呢? close; sql.Clear; adoquery1.SQL.Add('aaaa'); adoquery1.Parameters.Refresh; adoquery1.ExecSQL; edit1.Text:=vartostr(adoquery1.Parameters.ParamByName('@avg').Value); 谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dickeybird888
2003-10-31
打赏
举报
回复
作者可能不太会使用存储过程,我给你写一个把!
在sql server中定义一个存储过程
CREATE PROCEDURE selecta @a int,@retval int output AS
select @retval=count(*) from a
where a =@a
客户端:
var
i:integer;
i:=strtoint(edit1.text)//从edit1.text输入数据
edit2.text:=inttostr(dcomconnection.appserver.update(i));
//edit2.text显示执行结果
//
服务器端
function TDM_update.update(a:Integer):integer;
begin
ADOStoredProc1.Parameters.ParamByName('@a').value:= a;//查询参数
ADOStoredProc1.Parameters.ParamByName('@Retval').value:= 0;
ADOStoredProc1.ExecProc;
result:=ADOStoredProc1.Parameters.ParamByName('@retval').value;//回传结果
end;
aybc
2003-10-31
打赏
举报
回复
这个是存储过程
CREATE proc aaaa @para1 char(10)='cccc',@ah int=0 output as
select @ah=hhh from auname where name=@para1
return @ah
GO
可是
adoquery1.Parameters.ParamByName('@ah').Value;
就得不到值,老说没有返回值。
edgethinking
2003-10-31
打赏
举报
回复
如果你的存储过程确实返回值的话,在adoquery1的Parameters属性里可以看见这个参数
的,
你只要使用
adoquery1.Parameters.ParamByName('@avg').Value;
就可以得到这个返回值,要是存储过程没有返回值的话,你当然得不到!
47522341
2003-10-31
打赏
举报
回复
存储过程里边的变量是不能作为返回值返回的;
你要在你的存储过程结尾处加一句;
select @avg as 'avg'
然后执行下边的语句;
close;
sql.Clear;
adoquery1.SQL.Add(' exec aaaa ');
adoquery1.open;
edit1.text := adoquery1.fieldbyname('avg').asstring;
railgunman
2003-10-31
打赏
举报
回复
变相的解决办法:先申明一个参数用来存储存储过程返回的直,最后在
select 参数 as avg 最后通过adoquery1.fieldbyname(avg).asstring 得到这个直!
浅见!
aybc
2003-10-31
打赏
举报
回复
我的语句可以执行,就是传不回存储过程里的参数。@avg是存储过程里的参数。
adoquery1.SQL.Add('aaaa');aaaa是存储过程
adoquery1.SQL.Add('select ''aaaa'' as aaaa ');是什么意思啊。
47522341
2003-10-31
打赏
举报
回复
close;
sql.Clear;
adoquery1.SQL.Add('select ''aaaa'' as aaaa ');
adoquery1.open;
edit1.Text:= adoquery1.Parameters.ParamByName('aaaa').asstring;
spring.net中文手册在线版
使用方法的
返回值
进行注入 4.3.6.IFactoryObject接口的其它实现 4.3.6.1.Log4Net 4.3.7.使用depends-on 4.3.8.自动装配协作对象 4.3.9.检查依赖项 4.4.类型转换 4.4.1.枚举类型的转换 4.4.2.内置的类型转换器 4.4.3....
delphi中调用oracle的
存储过程
(
ADO
DataSet,
ADO
Query
,过程带
返回值
不带
返回值
均有)
temp=2.169436E-02 论坛中JCC0128 网友的... 【delphi+oracle报表解决方案(一)】delphi中调用oracle的
存储过程
(分带返回游标,不
返回值
两种) 关键字: delphi ,oracle
存储过程
,游标,返回数据集,报表 注:de
在Delphi中如何获得SQL中
存储过程
的
返回值
?
示例
存储过程
:create procedure proc_loginusername varchar(20),password varchar(20)asdeclare @result intselect @result=count(*) from loginuser where user=@username and pass=@passwordif @result=0return ...
delphi调用
Ado
Query
实现SqlSever的
存储过程
(返回)
示例创建数据库中的
存储过程
: CREATE TABLE BOOK( BOOK_NO VARCHAR(20) PRIMARY KEY CLUSTERED, BOOk_NAME VARCHAR(20), AMOUNT SMALLINT ) CREATE PROCEDURE
ADO
_STORED @BOOK_NO VARCHAR(20),@BOOK_...
delphi
存储过程
(
返回值
)
ado
query
1.Parameters.Items[0].Value:=edit1.Text;
ado
query
1.Parameters.Items[1].Value:=edit2.Text;
ado
query
1.Parameters.Items[2].Value:=edit3.Text;
ado
query
1.Parameters.Items[3].Value:=...
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章