数据窗口的SQL语句

ax123 2003-10-13 10:39:26
数据窗口(窗口为dw_1)的原SQL语句:select field1,field2,field3 from table where field1=:p_parm (三个字段均为varchar型)。如果(先定义三个变量String s_str,s_old,s_new)用s_old=dw_1.getsqlselect()。s_new=s_old+" and filid2='"+s_str+"'"。然后用dw_1.setsqlselect(s_new),dw_1.retrieve(p_parm)。问如何处理,参数p_parm怎样设置?
...全文
44 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wantsong 2003-10-16
  • 打赏
  • 举报
回复
别忘了retrieve完毕后要
dw_1.setsqlselect(s_old)
否则就会报错
longdrang 2003-10-16
  • 打赏
  • 举报
回复
select field1,field2,field3 from table where field1=:p_parm時已經給參數值.直接retrieve()就ok.
jimly 2003-10-16
  • 打赏
  • 举报
回复
既然要该查询语句,p_parm就没必要了
直接在构造新的sql时,加上条件就得了。

lkfs 2003-10-16
  • 打赏
  • 举报
回复
setsqlselect函数不支持带参数的SQL语句,用
Modify("DataWindow.Table.Select=''")试一试,应该可以
qiyousyc 2003-10-14
  • 打赏
  • 举报
回复
肯定没问题,一定是s_new的语法有错误。
linleming 2003-10-14
  • 打赏
  • 举报
回复
应该是新的sql语句s_new错误
jdsnhan 2003-10-14
  • 打赏
  • 举报
回复
估计是s_new赋值错了,把s_new读出来看看。
workhand 2003-10-14
  • 打赏
  • 举报
回复
那把s_new显示出来看看是不是你想要的效果
ax123 2003-10-14
  • 打赏
  • 举报
回复
不行呀
函数setsqlselect(s_new)的返回值为 -1 不能设置
ropriest 2003-10-14
  • 打赏
  • 举报
回复
String s_str,s_old,s_new

s_old = dw_1.GetSqlSelect()
s_new = s_old+ 'and filid2 = ' + s_str
dw_1.setsqlselect(s_new)
dw_1.retrieve(p_parm)
klbt 2003-10-13
  • 打赏
  • 举报
回复
一般情况可以,前提是dw_1.getsqlselect()中没有group by和order by,否则 and filid2='"+s_str+"'"不能放在最后,要填在中间。
佣工7001 2003-10-13
  • 打赏
  • 举报
回复
没有问题呀,一样用dw_1.retrieve(p_parm)

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧