hur.cn - 华软网

 热门搜索

如何在PB中调用存储过程,并将查询的结果显示在文本框中?谢谢

  作者:未知    来源:网络    更新时间:2018/8/6
大虾好,请问如何在PB中调用(SQL SERVER)存储过程,并将(查询)结果显示在窗体的文本框中?能否给个例子,谢谢
------华软网友回答------
declare aa PROCEDURE FOR <存储过程名>
@ss =:ls_ss
@yy =:ls_yy output
using sql_ca;
execute aa;
fetch aa into:ls_yy;
close aa;
sle_1.text =:ls_yy

------华软网友回复------
CREATE PROCEDURE p_temp  AS 
   select 1 from any_table
   GO
--procedure in SQL server
------

long ll_temp

declare p_pbxxx procedure for p_temp;//PB调用

execute p_pb;

fectch p_pb into :ll_temp;

st_name.text += string( ll_temp )

------华软网友回复------
还是查询不出来数据,举例创建一个存储过程和调用其过程的如下:
SQL SERVER 里面的存储过程为:create procedure query_room @r_no char(4) output,@r_type char(6) as select top 1 @r_no=room_no from t_room where room_type=@r_type
go
PB里面的调用语句:
string fh 
declare query procedure for query_room 
@r_no=:fh out ;
@r_type="标准房"
execute query;
fetch query into :fh;
sle_1.text=fh
commit using sqlca ;
close query;
请大虾帮我看看,谢谢
------华软网友回复------
这样写试试
string fh 
declare query procedure for query_room 
@r_no=:fh out ;
@r_type="标准房"
commit using sqlca ;
execute query;
fetch query into :fh;
sle_1.text=fh

close query;

------华软网友回复------
还是检索不出数据
------华软网友回复------
declare query procedure for query_room 
@r_no=:fh out ;
@r_type="标准房"

符合条件的记录肯定不止一条咯.那就要用循环拉.

do while sqlca.sqlcode = 0
  fetch query into :fh;
  sle_1.text += fh
loop

------华软网友回复------
真接选择用数据源为储存过程的数据窗口就可以了然后从数据窗口中取值这样就可以了
------华软网友回复------
成功了,谢谢,怎么给分?
------华软网友回复------
SQL SERVER 里面的存储过程为:create procedure query_room @r_no char(4) output,@r_type char(6) as select top 1 @r_no=room_no from t_room where room_type=@r_type
go
请问大虾,变量@r_no是获取room_no的值?为什么我写的
string no
@r_no=no out;
@fjlx="标准房"
........
在保存时总是有语法错误?谢谢
     
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。