精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● Powerbuilder>>数据库相关技术>>[ SQL语句 ]>>怎样在PB中调用存储过程?

主题:怎样在PB中调用存储过程?
发信人: yangjianzhou()
整理人: flyingmist(2000-02-27 01:03:34), 站内信件
【 在 yizhilai (易子) 的大作中提到: 】
: 【 在 z.d.h (格格巫) 的大作中提到: 】
: : 【 在 orion (猎户) 的大作中提到: 】
: : 
: : DECLARE aaa PROCEDURE 
: : FOR bbb @x =y
: : using tr_a;
: : execute aaa;
: : 其中:
: : aaa:pb中的存储过程名,
: : bbb:sybase中的存储过程名
: : @x:sybase中的存储过程中的参数
: : y:pb中的变量或常量,注意,如果是变量,要在变量之前加冒号。
: : tr_a:transaction名,如果是sqlca可以省略
: : 如果还不明白,可以看help或发E-mail给我:[email protected]
: : 你可以查看help

: 如果存储过程有返回值,则需要使用动态SQL语句,利用SQLSA,SQLDA
: 之类的全局变量。你可以用关键字“Dynamic SQL”来查找帮助。


如下方式调用更合理

Int out_status
DECLARE  xxjf_hdcxb PROCEDURE FOR xxjf_hdcxb  
                        @out_status=0 output,
                           @in_ksrq=:ksrq,
                        @in_jsrq=:jsrq,
                        @in_month   =:month;
execute xxjf_hdcxb;
                
do while sqlca.sqlcode=100
       fetch xxjf_hdcxb into :out_status;
loop
fetch xxjf_hdcxb into :out_status;
close xxjf_hdcxb;

If out_status=0 Then  MessageBox("信息","执行成功 !")
If out_status=1 Then  MessageBox("信息","执行失败 !")   

如有问题,请访问http://w3info.126.com/ 进行留言

--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.100.27.90]

[关闭][返回]