首页 新闻 会员 周边

请问用SqlParameter选择字段不为null的问题

1
悬赏园豆:20 [已解决问题] 解决于 2009-01-08 18:47

假设一个sqlcommand的commandtext设置为:

cmd.commandtext= "select * from tablename where field1 <> @P1";

cmd.parameters.add(new sqlparameter("@P1", DbType.String, DBNull.Value));

IDataReader reader = cmd.ExecuteReader();

while(reader.Read())

{

  ........

}

请问这样可以吗?

(也就是说SqlParameter的值设置为DBNull.Value, 而比较符号用的是“<>”)

 

还是必须用 where field1 is not null ???

 

hoodlum1980的主页 hoodlum1980 | 小虾三级 | 园豆:559
提问于:2009-01-07 15:59
< >
分享
最佳答案
0

这样用不可以。实际上这是数据库层面的问题。即使执行通过可能也不是你想要的结果。

注意:xxx<>'xxxx'表示xxx is not null and xxx<>'xxxx'

GUO Xingwang | 老鸟四级 |园豆:3885 | 2009-01-07 16:09
其他回答(1)
0

判断是否为NULL要使用ColumnX is NULL

具体参考:

http://www.cnblogs.com/yukaizhao/archive/2008/11/24/t_sql_null.html

玉开 | 园豆:8822 (大侠五级) | 2009-01-07 16:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册