修身养性,知行合一

  • 首页
  • 爱码
    • 系统
    • 数据库
    • JavaScript
    • CSharp
    • Python
  • 生活
    • 文化
    • 美食
  • 杂谈
  • 关于
修身养性,知行合一
码字,杂谈
  1. 首页
  2. 爱码
  3. 数据库
  4. 正文

MySql中timestamp创建日期的时区问题

2019年10月16日 4200点热度 0人点赞 0条评论

在MySql中创建表的时候,经常需要创建一个创建日期字段,一般来说,在创建时我们使用timestamp直接可以生成该字段,并不用我们手动操作。

发现问题

CREATE TABLE t1(
    id int(11) primary key auto_increment,
    create_date timestamp default current_timestamp
)default charset=utf8;

这样就可以创建一个最简单的测试表:

file

然后我们添加一条测试数据:

INSERT INTO t1 (id) VALUES (1);

然后查询一下,发现了问题:

file

为了显示问题效果,我特意和当前时间截了图,timestamp创建的时间和我们相差好多,这是因为MySql默认使用美国东部时间,所以我们需要改变一下时区。

修改MySql的时区

在终端运行如下命令:

SET time_zone = '+8:00';  // 将时区改成我们的东八区
flush privileges; // 这是立即刷新使用

然后再次查询刚才创建的表:

file

我们欣喜的发现它已经自动变成我们想要的时间了,并不用我们手动去调整。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
标签: mysql timestamp 时区
最后更新:2019年10月16日

jeremyjone

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

文章评论

取消回复

最新 热点 随机
最新 热点 随机
node-sass 的安装 解决端口被占的问题 vue3 组件 Props 的声明方式 给 div 添加选中状态 请求的取消 rgb 颜色小数兼容问题
[正则] 格式化数字 JavaScript 之 canvas(一) 迁移 wordpress 小记 关于 vue3 的 onMounted 获取不到 ref 美化 Windows Terminal(升级版) 拒绝弹窗!获取windows最高权限

(っ•̀ω•́)っ✎⁾⁾ 开心每一天

COPYRIGHT © 2021 jeremyjone.com. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

京ICP备19012859号-1

京公网安备 11010802028585号