关于mysql自动更新时间字段的定义 datetime 和timestamp的使用

关于mysql自动更新时间字段的定义 datetime 和timestamp的使用

发现网上尤其是这个博客里,一大堆的坑,而且都是深坑,很多看起来是大佬的人,结果给出来的答案都是坑,模拟两可,根本解决不了问题,而且还坑了不少萌新们的时间,所以我觉得应要写点什么,为遇到根我相同问题的萌新们一点小小的帮十足。

1,目标原因,要设计两个时间字段,一个是创建时间字段 记录数据入库的时间,另外一个是要设计记录其他字段更新时,会自动记录最后一次的更新时间。
让我们来创建一张表
例如我们要创建一个会员表,这个会员表用来记录会员的名字和积分,我们要知道这个会员的入会的时间和他积分变动的时间
create table users
(
user_id int(10) PRIMARY KEY NOT NULL AUTO_INCREMENT,
user_name varchar(20),
user_createtime datetime NOT NULL,(注意这里就要用datetime)
user_updatetime timestamp,(这个是,当我们每次数据库字段内容有所变化的时候,这个字段就会自动记录时间)
user_phone int(20),
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
上面只是个简单的例子,用来说明这个字段怎么定义。
在mysql环境下DESC users;
在这里插入图片描述zh
上图,大家仔细看的话,就会发现,最后一行 user_updatetime后面extra项里最后一行表示会自动更新时间了。
如果有错误,留言。
在网上找一大堆关于自动更新时间问题的博客,发现到处是坑啊。最后找到了最终答案。希望帮到大家,这里也是受到
https://blog.csdn.net/zhf_2016cs/article/details/52260063这位博主的解答,才找到了最终的答案!!

猜你喜欢

转载自blog.csdn.net/weixin_41863241/article/details/94277215