当参数值为空时,怎样传递到数据窗口?(立即给分)

galiton 2003-05-30 08:09:03



在PB写报表的时候,有些参数值缺省是空值,请问遇到这种情况在参数传递和写SQL语句的时候应该怎样处理?

我用的是ACCESS,请问SQL语句这样写能不能正确的接收值为空的参数?
where ( selld.goodcode is null or selld.goodcode = :ps_goodcode )
...全文
39 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
galiton 2003-06-02
  • 打赏
  • 举报
回复
请问joss,实际情况中完全有可能会出现参数为空值啊?
galiton 2003-06-02
  • 打赏
  • 举报
回复
楼上用法好像不对,在SQL语句里面这么用的话,字段都出不来了。
joss 2003-06-02
  • 打赏
  • 举报
回复
这是因为空值不参加运算!
sunsg 2003-06-02
  • 打赏
  • 举报
回复
where ( isnull(selld.goodcode,'')='' or selld.goodcode = :ps_goodcode )
galiton 2003-06-02
  • 打赏
  • 举报
回复
谢谢提醒,不过改过来还是出不来数据
tulip2108 2003-06-02
  • 打赏
  • 举报
回复
应该是参数为空,如下:
where ( :ps_goodcode is null or selld.goodcode = :ps_goodcode )
galiton 2003-06-02
  • 打赏
  • 举报
回复
但是为什么我只要有一个参数为空,就会一条都出不来



??????????????????????????????????????



galiton 2003-06-02
  • 打赏
  • 举报
回复
up
joss 2003-05-30
  • 打赏
  • 举报
回复
没有问题的,收到参数是可以先判断是否空值,再对其进行操作!
bastenlee 2003-05-30
  • 打赏
  • 举报
回复
setnull()
rogery 2003-05-30
  • 打赏
  • 举报
回复
楼主说的也对。

至于空值可以用付空值函数。

setnull()
waterstony 2003-05-30
  • 打赏
  • 举报
回复
string ls_1
setnull(ls_1)
dw_1.retrieve(ls_1)
别的类型也可以。
galiton 2003-05-30
  • 打赏
  • 举报
回复
从参数窗口取参数代码如下:

st_dayfromto_goods_seller_serno st_parm_1

date date1,date2

em_1.getdata(date1)
em_2.getdata(date2)

st_parm_1.dayfrom = datetostring(date1)
st_parm_1.dayto = datetostring(date2)
st_parm_1.goodcode = em_3.text
st_parm_1.sellcode = em_4.text
st_parm_1.serno = em_5.text

closewithreturn(parent,st_parm_1)
geomis 2003-05-30
  • 打赏
  • 举报
回复
用setnull函数
sujianhua 2003-05-30
  • 打赏
  • 举报
回复
可以啊

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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