欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

探讨:sql插入空,默认1900-01-01 00:00:00.000的解决方法详解

程序员文章站 2024-02-21 08:41:10
sql2005 若字段定义的类型为datetime,插入为''(空),那么会默认值为1900-01-01 00:00:00.000 解决方法查询的时候过滤下cast(nu...

sql2005 若字段定义的类型为datetime,插入为''(空),那么会默认值为1900-01-01 00:00:00.000

解决方法查询的时候过滤下cast(nullif('','') as datetime)

复制代码 代码如下:

select cast('' as datetime)
    , cast(nullif('','') as datetime)
    , isnull(cast(nullif('','') as datetime),getdate())
/*
----------------------- ----------------------- -----------------------
1900-01-01 00:00:00.000 null                    2009-02-25 17:18:15.140

(1 行受影响)

*/