Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

MySQL 保存日期时间时怎样处理时区?

查看完整题解

参考回答

直接回答

先明确记录的是全球时间点还是某地日历时间。TIMESTAMP 写入和读取会按会话时区转换,DATETIME 保留给定日期时间字段。地区预约还可能需要保存时区标识。

讲清原理

会话时区不同,同一 TIMESTAMP 可以显示成不同时刻。跨服务应统一连接约定,使用地区时区规则时要考虑夏令时和 MySQL 时区表。

同一个时间点转换成不同墙上时刻,格式化与时区转换要分开
同一个时间点转换成不同墙上时刻,格式化与时区转换要分开

例子与易错点

支付发生时间可用一致的时间点约定,未来本地预约要保留地区语义。核对连接池复用时的会话配置,避免下一次请求继承上次临时修改。

固定偏移转换示例。地区时区还要核对夏令时规则。

SELECT CONVERT_TZ('2026-01-01 20:00:00', '+00:00', '+08:00');

相关题 · 第 90 题

这道题,你掌握得怎么样?

掌握程度由你主动标记,阅读和收藏不会自动改变状态。