mysql数据库自动生成默认时间不正确进行校正

引言

查看数据库数据,发现表中自动生成的创建时间不正确,故先使用SELECT CURRENT_TIMESTAMP; sql验证自动生成的时间是否是不正确的。经验证确定是自动生成的时间不正确,进而想到了对时间进行校正。

校正过程

首先查看数据库时间的时区是否是当地的。

SELECT @@global.time_zone, @@session.time_zone;

经查看确认数据库自动生成时间戳所使用的时区是system系统时区。

依赖系统时区耦合性以及不太好判断其准确时区。因此将数据库时间戳所使用的时区进行固定。

SET GLOBAL time_zone = 'Asia/Shanghai';

SET time_zone = 'Asia/Shanghai'; 只对当前会话的时间戳有影响不会对其他连接的会话产生影响。所以不使用这条sql进行更改。

拓展

SELECT NOW(); -- 显示当前日期和时间

SELECT CURDATE(); -- 显示当前日期

SELECT CURTIME(); -- 显示当前时间

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s'); -- 格式化时间

相关推荐
资深技术分享员34 分钟前
Geejing WebBuilder 数据库连接配置与在线 SQL 工具,运维的左右手
运维·数据库·sql·低代码
ao-weilai1 小时前
MySQL数据库:表操作
数据库·mysql·adb
宵时待雨1 小时前
MySQL数据库1:数据库基础
服务器·数据库·mysql
做运维的阿瑞1 小时前
一个 NULL 让整列姓名消失?MySQL 字符串与日期函数复盘
数据库·sql·mysql
程序猿乐锅2 小时前
【黑马点评 | 第十一篇】关注 Feed 流实现
java·数据库·redis·分布式·后端·缓存·maven
phltxy2 小时前
C 语言文件操作:让数据从内存走向持久化
c语言·网络·数据库
阳光九叶草LXGZXJ2 小时前
达梦数据库-学习-69-DM9主备集群部署
linux·运维·服务器·数据库·sql·学习
jnrjian2 小时前
Connect Microsoft Tools to Oracle Databases powerbi 之类的oracle 客户端
数据库·microsoft·oracle
北京恒星科通刘军2 小时前
灾害监测预警系统中,应急疏散广播的“应急叫应”实际送达率与有效性研究
网络·数据库·人工智能
ShineWinsu2 小时前
对于Redis:List类型的解析
数据库·c++·redis·链表·缓存·面试·list