MySQL 确实 允许
NULL使用
datetime字段值。我只是测试了一下:
mysql> create table datetimetest (testcolumn datetime null default null);Query OK, 0 rows affected (0.10 sec)mysql> insert into datetimetest (testcolumn) values (null);Query OK, 1 row affected (0.00 sec)mysql> select * from datetimetest;+------------+| testcolumn |+------------+| NULL | +------------+1 row in set (0.00 sec)
我正在使用此版本:
mysql> select version();+-----------+| version() |+-----------+| 5.0.45 | +-----------+1 row in set (0.03 sec)
编辑#1:我在您的编辑中看到,您在PHP中收到的错误消息表示您正在传递一个空字符串(即
''),而不是
null。空字符串不同于
null且不是有效值
datetime,这就是为什么您收到该错误消息的原因。
null如果这是您的意思,则必须传递特殊的sql关键字。另外,请勿在单词周围加上任何引号
null。有关
insert如何插入的示例,请参见上面的声明
null。
编辑#2:您正在使用PDO吗?如果是这样,则在绑定空参数时,请确保
[PDO::PARAM_NULL][1]在绑定a时使用类型
null。有关如何使用PDO
正确插入的信息,请参见此stackoverflow问题的答案
null。



