我试图恢复某人给我的数据库以供参考。我在PHP 5.6.10中使用MAMP。我尝试导入给我的SQL文件,但是,它在这个块中给出了一个错误:
CREATE TABLE `itg_civil_status` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`civilStatusName` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`date_created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP(),
`date_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP(),
PRIMARY KEY (`id`)
)
有问题的一行是:
`date_created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP(),
我得到的错误是
Invalid default value for 'date_created'
我已经查过了,并且有答案说datetime
应该为null或默认值为常量。但是,我还读到,从PHP 5.6开始,CURRENT_TIMESTAMP()
字段允许datetime
。我也试过CURRENT_TIMESTAMP
,CURRENT_TIMESTAMP(), and
NOW()`,但都无济于事。
请注意,我不能只是将我的朋友从datetime
更改为timestamp
,因为出于某种原因,MySQL不允许我这样做。
我也试过使用PHP 7进行测试,但也无济于事。