更新时间:2025-04-09 gmt 08:00
建表时timestamp字段默认值无效-j9九游会登录
场景描述
执行建表sql语句失败,报错:error 1067: invalid default value for 'session_start'
create table cluster_membership ( ... session_start timestamp default '1970-01-01 00:00:01', ... );
原因分析
关于timestamp字段:mysql会把该字段插入的值从当前时区转换成utc时间(世界标准时间)存储,查询时,又将其从utc时间转化为当前时区时间返回。
timestamp类型字段的时间范围:'1970-01-01 00:00:01' utc -- '2038-01-19 03:14:07' utc,详见。

使用如下命令查看时区:
show variables like "%zone%";
由于使用的是utc 8时区,所以timestamp字段默认值需要加8小时才是有效范围,即有效支持的范围是从1970-01-01 08:00:01开始。

j9九游会登录的解决方案
修改timestamp字段的默认值:
session_start timestamp default '1970-01-01 08:00:01',
相关文档
意见反馈
文档内容是否对您有帮助?
提交成功!非常感谢您的反馈,我们会继续努力做到更好!
您可在查看反馈及问题处理状态。
系统繁忙,请稍后重试
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨