自动更新数据时间语句

自动更新数据时间语句

运行以下sql

ALTER TABLE table_name MODIFY COLUMN update_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP 

ON UPDATE CURRENT_TIMESTAMP

table_name 为要修改的表名称,update_time为要修改的时间字段

执行更新语句时,如果数据没有真正的改变,update_time值不变,只有数据值改变,update_time才会变成当前时间

MySQL 数据库中,实现使用修改语句更新当前时间有多种方法,以下为你详细介绍: ### 创建表时设置自动更新时间字段 在创建表时,可以添加一个字段,设置其默认值为当前时间,并且当一行数据中有字段的值发生改变时,该字段会自动更新到最新时间。例如创建 `baby` 表: ```sql create table `baby` ( `id` int(11) not null auto_increment, `name` varchar(20) default null, `age` double default '0', `sex` datetime default null, `updata_time` timestamp not null default current_timestamp on update current_timestamp, primary key (`id`) ) engine=innodb auto_increment=30 default charset=utf8; ``` 在这个例子中,`updata_time` 字段会在数据记录有更新时自动更新为当前时间 [^2]。 ### 为已存在的表添加自动更新时间字段 若表中原本不存在自动更新时间字段,可以通过以下语句添加: ```sql ALTER TABLE baby ADD updata_time timestamp not null default current_timestamp on update current_timestamp; ``` 执行此语句后,`baby` 表会新增 `updata_time` 字段,只要表中有值发生改变,该字段就会自动更新为当前时间 [^2]。 ### 修改已有字段为自动更新时间字段 可以使用 `ALTER TABLE` 语句修改已有字段,使其具备自动更新时间的功能。例如将 `car` 表的 `modify_date` 字段修改为自动更新时间字段: ```sql ALTER TABLE car MODIFY modify_date TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; ``` 这样,当 `car` 表中的记录有更新时,`modify_date` 字段会自动更新为当前时间 [^3]。 ### 在特定场景中添加自动更新时间字段 当遇到特定业务场景,如用户绑定车牌操作,为了记录操作时间,可向表中添加 `timestamp` 类型的字段,并将默认值设为 `CURRENT_TIMESTAMP` [^4]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值