在pb的dw_1窗口控件中如何调用sql的存储过程(窗口中有个查询(cb_1))想通过查询执行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在pb的dw_1窗口控件中如何调用sql的存储过程(窗口中有个查询(cb_1))想通过查询执行相关的知识,希望对你有一定的参考价值。

sql中存储过程create proc chengji
@A char (8)
as
select stu.sno,stu.sname,stu.sdept,cno.cno,cno.cname,cno.grade
from stu,cno
where stu.sno=cno.sno and stu.sno in (select sno from stu where @A=left(sno,4) )

数据窗口有几种源,quick select ,sql select ...,最后一个就是存储过程。
你可以使用存储过程最为数据窗口的源,这样就能在前台数据窗口中显示了。追问

试了,不行,它不认识@

追答

是可以的。你再试试看。选好存储过程后,出现让你创建字段的窗口,字段的顺序,要按照存储过程中最后的select顺序,并且数据类型对应,是可以创建的。而你的@a,就是数据窗口的查询参数。
注意一下,选择存储过程的时候,上方有一个选项,选择manual result set,然后进行设置。
不要选择【系统存储过程】这项。

追问

按照你的方法,当我点finish的时候说Pb10.5应用程序出错,麻烦再帮忙解决下,谢谢!

追答

你再多试试,先看看你的存储过程是否有问题,另外,注意自己创建的列以及列的类型和存储过程最后的select要对照,否则会出错。我的图片也是PB10.5做的,所以这个肯定是支持的。
如果仍然有错,那就要看是不是你的PB安装问题了,不过我估计这个可能性不大,应该不会有什么问题。或者你可以用一个别人的机器试试看,创建好之后导入到你的PBL里面。

追问

你选择的数据窗口是grid的,还是其他??

追答

恩,我选择的是grid,不过这个应该和数据窗口的类型没有关系。

参考技术A datawindow 中可以设置检索参数为存储过程名的,并且可以指定其存储过程接收的参数,以前我开发过的一个项目里边经常用到数据源为存储过程的数据窗口追问

能说详细点么?谢啦~~~

pb中composite数据窗口如何设置检索参数

PB,数据窗口dw_1要显示其子数据窗口dw_singers和dw_songs的内容,现在要把参数001传给dw_singers中的“歌手编号”,最后显示出001号歌手对应的内容,请问代码怎么写?

参考技术A 打开composite数据窗口,在属性General页的Retrieval
Arguments列表中,把需要的参数维护好,比如输入一个singerid;
然后选中子数据窗口dw_singers,在属性General页的Argments列表中,会自动把它需要的参数列出来,这时,再把刚才输入的那个singerid参数名填进去,就可以了。

以上是关于在pb的dw_1窗口控件中如何调用sql的存储过程(窗口中有个查询(cb_1))想通过查询执行的主要内容,如果未能解决你的问题,请参考以下文章

powerbuilder如何在窗口中调用数据窗口的控件呢

pb 数据窗口 传入参数

pb中composite数据窗口如何设置检索参数

如何使pb数据窗口不可编辑变为可编辑

关于PB中的数据窗口问题

PB数据窗口(dw控件)中焦点在同一行不同字段修改数据后切换到同一行的不同字段后会触发哪些事件?<->