对于SQL Server中,bit数据类型只存储三种值,0、1和null。
今天遇到一个问题就是在新增一条数据时,给bit类型的字段赋值空字符串(”“)时,发现数据库中该字段的值显示为0,这是因为空字符本质上还是一个字符串,只是长度为0而已,所以数据库中显示为0;
但如果直接赋值null或者不给赋值时,bit字段显示的是null。
* 这也可以延伸到对字符串的判断,首先应该判断是否为null,然后才判断是否为空,这样可以避免报错*
if(s != null && s != ""){
//具体代码
}