由于按规范需要对 update_time 字段需要对它做默认值的设置
现在有一个原始的表是这样的
CREATE TABLE `test_up` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
`update_time` datetime default null COMMENT '操作时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
表里的数据 update_time 字段真的有 NULL 的情况
由于按规范需要对 update_time 字段需要对它做默认值的设置。
操作步骤是这样的:
- 复制一个表出来,表结构如下:
CREATE TABLE `test_up2` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '操作时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
- 复制数据
insert into test_up2 select * from test_up;
- 看结果
update_time 字段 NULL 的就成了 0000-00-00 00:00:00
这会导致程序出错。












![[SWPUCTF 2021 新生赛]crypto6](https://img-blog.csdnimg.cn/direct/ce04fa4cdc854df09a777c2b4326a3f3.png)




![[LVGL]:MACOS下使用LVGL模拟器](https://img-blog.csdnimg.cn/direct/253d7e24fe964757b700d356aed1f608.png#pic_center)


![Exam in MAC [容斥]](https://img-blog.csdnimg.cn/direct/5098002066b24924a086c0221723f525.png)