项目出现如下错误:
Error updating database.
Cause:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'createTime' cannot be null
数据模型如下:
/* 创建时间不可为空*/
createTime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ,
/* 更新时间不可为空*/
updateTime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间' ,
经过一系列的问题排查,定位到是因为不同版本的MySQL数据库全局变量“explicit_defaults_for_timestamp”的问题。
-- 查看explicit_defaults_for_timestamp默认值
SHOW GLOBAL VARIABLES LIKE "explicit_defaults_for_timestamp";
-- 修改explicit_defaults_for_timestamp默认值
SET @@global.explicit_defaults_for_timestamp=OFF;
参数值为"ON"的情况: