数值类型和日期时间类型,当存储为空值‘’时,sqlserver会分别按默认值存储(0、1900-01-01 00:00:00.000)
前台一般会把用户没有输入的数据按‘’空值传递到后台。后台业务层按以下情况处理:
- 对于字符串类型的字段,不用变换,可以直接按‘’空值存入数据库,但为了防止意外的null传入,也调用公共方法将该值转换成‘’空值。
- 对于日期时间、数值类型,调用intdateToNull公共方法,将其转换成null存入数据库。
后台将‘’、null传到前台的情况,由前台处理。(经过后台的转换,字符串类型已经都变成空值‘’存到数据库)
1、字符类型的‘’,直接传到前台进行绑定;不用处理。
2、对于日期时间、数值类型,前台要将null值改成‘’空值后,再进行绑定。
需要对老数据库中的不符合上述规定的值进行清理。
1、将数据库中的(0、1900-01-01 00:00:00.000)转换成null。