当前位置: 代码迷 >> PB >> pb11.5查询BUG,该怎么处理
  详细解决方案

pb11.5查询BUG,该怎么处理

热度:77   发布时间:2016-04-29 07:46:12.0
pb11.5查询BUG
以下语句在pb9中查询得出结果ll_cnt=1(正确的结果),但在PB11.5中得出结果0
其中变量ls_c是空值
select count(*) into ll_cnt from ab
where a='01' and b='01'and c =:ls_c;
    
请各位高手指教!
------解决方案--------------------
引用:
难道pb11.5和PB9对处理变量ls_c为空的时候方式不一样?


不是pb9与pb11.5的区别,因为它们提供的数据库接口不同,所以结果不一样了,只要平常写SQL的时候严谨一些就好了,
pb9你用的应该是专用接口,而pb11.5用的是ado之类的吧,它们在处理SQL上略有不同;

最好的处理方式是把变量在比较之前处理一下~~


------解决方案--------------------
在MSSQL中 NULL的时候不要用 = ,要用is null,对于你这种情况,需要处理了,isnull(var,-1) = 
  相关解决方案