数据库中,一个列如果没有指定值,那么值就为null,这个null和C#中的null,数据库中的null表示
“不知道”,而不是表示没有。
因此select null+1结果是null,因为“不知道”加1的结果还是“不知道”。
SELECT * FROM T_Employee WHERE FNAME=null ;
SELECT * FROM T_Employee WHERE FNAME!=null ;
都没有任何返回结果,因为数据库也“不知道”。
SQL中使用is null、is not null来进行空值判断:
SELECT * FROM T_Employee WHERE FNAME is null ;
c#中处理用DbNull.Value
SELECT * FROM T_Employee WHERE FNAME is not null ;
转载于:https://blog.51cto.com/codejson/1872243