前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >update自更新字段添加新字段是否会更新旧数据

update自更新字段添加新字段是否会更新旧数据

原创
作者头像
薄刀刀
发布2022-04-29 11:32:57
1.1K0
发布2022-04-29 11:32:57
举报
文章被收录于专栏:mysql111

update自更新字段添加新字段是否会更新旧数据

验证:一张具备自更新字段的表,如果新增一个字段,原表数据的update_time字段是否会更新?

1、创建一张自更新字段的表

代码语言:javascript
复制
CREATE TABLE `bohaitest`(
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', 
`saler_id` MEDIUMINT(11) NOT NULL DEFAULT '0' COMMENT 'ID', 
`assigned_cust_num` INT(10) NOT NULL DEFAULT '0' COMMENT '已分配会员数',
`assign_type` TINYINT(3) NOT NULL DEFAULT '0' COMMENT '分配类型',
`flight_no` varchar(15) NOT NULL DEFAULT '' COMMENT '航',
`add_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`mark` TINYINT(3) NOT NULL DEFAULT '0' COMMENT '删除标志(0:有效;1:删除)', 
PRIMARY KEY (`id`) 
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='测试表'; 
insert into bohaitest (saler_id) values (100);
insert into bohaitest (saler_id) values (200);
insert into bohaitest (saler_id) values (300);
mysql> select * from  bohaitest;
+----+----------+-------------------+-------------+-----------+---------------------+---------------------+------+
| id | saler_id | assigned_cust_num | assign_type | flight_no | add_time            | update_time         | mark |
+----+----------+-------------------+-------------+-----------+---------------------+---------------------+------+
| 1 | 100 | 0 | 0 | | 2022-04-28 17:55:12 | 2022-04-28 17:55:12 | 0 |
| 2 | 200 | 0 | 0 | | 2022-04-28 17:55:43 | 2022-04-28 17:55:43 | 0 |
| 3 | 300 | 0 | 0 | | 2022-04-28 17:55:44 | 2022-04-28 17:55:44 | 0 |
+----+----------+-------------------+-------------+-----------+---------------------+---------------------+------+
2、对该表新增字段。
ALTER TABLE `bohaitest`
ADD COLUMN `ent_wei_flag` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0'  AFTER `flight_no`;
mysql> select * from  bohaitest;
+----+----------+-------------------+-------------+-----------+--------------+---------------------+---------------------+------+
| id | saler_id | assigned_cust_num | assign_type | flight_no | ent_wei_flag | add_time            | update_time         | mark |
+----+----------+-------------------+-------------+-----------+--------------+---------------------+---------------------+------+
| 1 | 100 | 0 | 0 | | 0 | 2022-04-28 17:55:12 | 2022-04-28 17:55:12 | 0 |
| 2 | 200 | 0 | 0 | | 0 | 2022-04-28 17:55:43 | 2022-04-28 17:55:43 | 0 |
| 3 | 300 | 0 | 0 | | 0 | 2022-04-28 17:55:44 | 2022-04-28 17:55:44 | 0 |
+----+----------+-------------------+-------------+-----------+--------------+---------------------+---------------------+------+
3 rows in set (0.00 sec)

注意:历史update_time字段值并没有更新。

3.更新某条记录,对应update_time字段值随即更新

代码语言:javascript
复制
mysql> update bohaitest set ent_wei_flag = 1 where saler_id=100;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> select * from  bohaitest;
+----+----------+-------------------+-------------+-----------+--------------+---------------------+---------------------+------+
| id | saler_id | assigned_cust_num | assign_type | flight_no | ent_wei_flag | add_time            | update_time         | mark |
+----+----------+-------------------+-------------+-----------+--------------+---------------------+---------------------+------+
| 1 | 100 | 0 | 0 | | 1 | 2022-04-28 17:55:12 | 2022-04-28 18:01:18 | 0 |
| 2 | 200 | 0 | 0 | | 0 | 2022-04-28 17:55:43 | 2022-04-28 17:55:43 | 0 |
| 3 | 300 | 0 | 0 | | 0 | 2022-04-28 17:55:44 | 2022-04-28 17:55:44 | 0 |

验证:一张具备自更新字段的表,如果新增一个字段,原表数据的update_time字段是否会更新?

答案是不会更新。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • update自更新字段添加新字段是否会更新旧数据
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档