我经历过许多类似于我的问题,但似乎都与尝试使用带有DATETIME字段的默认CURRENT_TIMESTAMP有关。
我在使用CURRENT_TIMESTAMP默认值时遇到问题,我知道应该支持TIMESTAMP字段。
我正在使用MySQL 5.6.3社区版。以下是我的表创建代码的部分摘录:
CREATE TABLE IF NOT EXISTS `my_table` (
`master_id` INT(10) NOT NULL AUTO_INCREMENT ,
`template_id` INT(10) NULL,
`def_id` INT(10) NOT NULL,
'override` TINYINT(1) NULL,
`last_update` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ...
出错:
'last_update'
的默认值无效任何想法为什么?
答案 0 :(得分:1)
找到答案。
有人(不是我)在MySQL my.cnf上设置了以下内容:
explicit_default_for_timestamp = 1
删除此设置解决了此问题。