ホームページ >データベース >mysql チュートリアル >探讨:sql插入空,默认1900-01-01 00:00:00.000的解决方法详解_MySQL

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-01 13:24:392459ブラウズ

bitsCN.com

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 行受影响)

*/

bitsCN.com
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。