Mysql 日期 默认插入 1970-01-01
Mysql Date Default insert in 1970-01-01
我正在插入一个空 date-field
,但系统会自动插入一个默认值 1970-01-01
。为什么?
我什至更改了 Date
结构以允许 null
,将 Default
设置为 Null
,但它仍然插入 1970-01-01
.
您很可能插入了一个空字符串。插入条目字符串将导致写入 1970-01-01。如果您不希望发生这种情况,则必须真正插入 NULL。
您想做的是:
INSERT INTO table
SET datefield = NULL
不是"NULL"
而是NULL
否则它会把它读成一个字符串而不是NULL
您也可以完全不在插入中设置该列,这样它也会使用 NULL
这是MySQL的默认行为,在数据库中检查该字段可以为NULL。
检查这个:old post
我正在插入一个空 date-field
,但系统会自动插入一个默认值 1970-01-01
。为什么?
我什至更改了 Date
结构以允许 null
,将 Default
设置为 Null
,但它仍然插入 1970-01-01
.
您很可能插入了一个空字符串。插入条目字符串将导致写入 1970-01-01。如果您不希望发生这种情况,则必须真正插入 NULL。
您想做的是:
INSERT INTO table
SET datefield = NULL
不是"NULL"
而是NULL
否则它会把它读成一个字符串而不是NULL
您也可以完全不在插入中设置该列,这样它也会使用 NULL
这是MySQL的默认行为,在数据库中检查该字段可以为NULL。
检查这个:old post