这篇文章主要介绍如何处理MySQL多个timestamp字段自动添加默认值的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
MySQL版本5.6.14
建表语句
drop table live_shrimp_info;
CREATE TABLE `live_shrimp_info` (
`LiveID` bigint(20) NOT NULL COMMENT '直播ID',
`SummonStartTime` timestamp(3) NOT NULL COMMENT '召唤期开始时间',
`SummonEndTime` timestamp(3) NOT NULL COMMENT '召唤期结束时间',
`CaptureStartTime` timestamp(3) NOT NULL COMMENT '捕获期开始时间',
`CaptureEndTime` timestamp(3) NOT NULL COMMENT '捕获期结束时间',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`LiveID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ;
建表之后,使用 show create table live_shrimp_info; 查询
CREATE TABLE `live_shrimp_info` (
`LiveID` bigint(20) NOT NULL COMMENT '直播ID',
`SummonStartTime` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '召唤期开始时间',
`SummonEndTime` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000' COMMENT '召唤期结束时间',
`CaptureStartTime` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000' COMMENT '捕获期开始时间',
`CaptureEndTime` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000' COMMENT '捕获期结束时间',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`LiveID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
纳尼?怎么多了这么多默认值?
这就是MySQL搞笑所在,它认为你缺个默认值..就帮你加上了
第一个timestamp且not null的字段,MySQL会自动加上
DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP()
其他timestamp且not null的字段,MySQL会自动加上
DEFAULT '0000-00-00 00:00:00'
以上是“如何处理MySQL多个timestamp字段自动添加默认值的问题”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。