日期:2014-05-20  浏览次数:20909 次

sql语句 'null' is not null的结果是真还是假??
我的一段sql条件,其中要某个参数不为null
例如A参数不为null , 我这样写的
SQL code
'?A?' is not null

也就是将参数隐式的转换成了字符型,结果貌似不是想要的了。

------解决方案--------------------
是真是假,试试就知道了
------解决方案--------------------
``````
探讨
是真是假,试试就知道了

------解决方案--------------------
‘’是空字符串,‘null’是值为null的字符串,怎么会为null
你应该是先验证传递过来的参数不为空或null
------解决方案--------------------
java 的null和数据库的null是不一样的!!!
------解决方案--------------------
话说你要在程序侧判断还是sql侧判断?
看LZ的话,我表示很费解...
程序侧,请if(obj == null)
sql测,请PreparedStatement中 ? is not null
------解决方案--------------------
数据库不同,判断就不同。
楼主用的是oracle吧,oracle就是这样的,认为字符串null就是空。
但mssql似乎就不一样。至于别的数据库没特意试过,楼主有时间可以帮大家测一下。