gpt4 book ai didi

MySQL - CET 和 CEST 之间的区别

转载 作者:行者123 更新时间:2023-11-29 02:35:38 41 4
gpt4 key购买 nike

我需要将一些表从 MySQL 数据库移动到 PostgreSQL。所以我通过检查系统变量检查了MySQL服务器使用哪个时区:

system time zone    CET

CET - 据我所知 - 与 CEST 相比 - 永远不会超过 UTC+1CEST 在夏季 UTC+2。根据http://en.wikipedia.org/wiki/Central_European_Time

但是 SELECT CURRENT_TIMESTAMP() 实际上返回 CEST 时间(UTC+2):

为什么?

最佳答案

So i've checked, which time zone is MySQL server using by checking system variable

你是怎么做到的?

请尝试这个查询并告诉我结果:

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

可以有三种类型的结果。

  • 系统

这意味着,MySQL 使用您操作系统的时区设置

  • 类似“+01:00”之类的东西值(value)

这是与 UTC(协调世界时)的时差

  • 类似“欧洲/柏林”的内容

这与上面的基本相同,但是您已经在 MySQL 中填充了时区表。

您会看到,datetime 值在 MySQL 内部存储为 UTC 值。因此,当您在表中插入“2011-03-30 12:34:56”并将 SYSTEM 变量设置为“Europe/Berlin”/“+01:00”时,MySQL 会计算“2011-03-”的整数表示30 11:34:56',将值保存在您的数据库中。当您查询日期时间值时,MySQL 会再次添加该小时(假设您的时区设置未更改)并为您提供值“2011-03-30 12:34:56”

关于MySQL - CET 和 CEST 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5488694/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com