mysql 关于datetime设定默认值的一个问题
求高手解答:
我在测试服务器上创建正常的表,脚本部署到开发环境时,结果执行创建数据库脚本时,
DROP TABLE IF EXISTS T_Inc_LimitList;
CREATE TABLE T_Inc_LimitList (
FunctionID int(11) NOT NULL AUTO_INCREMENT,
FunctionName varchar(30) NOT NULL DEFAULT '',
FunctionType int(11) NOT NULL DEFAULT '1',
CTIME datetime NOT NULL DEFAULT NOW(),
UTIME datetime NOT NULL DEFAULT NOW(),
PRIMARY KEY (FunctionID)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
提示错误ERROR 1067 (42000): Invalid default value for 'CTIME'
我知道可以更改正常执行
CTIME datetime NULL,
UTIME timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
但是现在业务上需要保留CTIME 字段记录数据写入时系统时间,UTIME字段记录最后一次修改时间;
想请教是我语法有什么不对,还是有关于数据库的配置需要设定
附上:测试库和正式库 都是同样的系统环境 mysql5.6+centos6.4