mysql - CDT 在 MySQL 时区中不存在

标签 mysql timezone

我最近用时区信息更新了 MySql,使用这里提到的信息 http://dev.mysql.com/doc/refman/5.7/en/time-zone-support.html

我面临的问题是,即使数据库现在有很多时区的信息,CDT 不是其中之一,当我进行时区转换时

使用 SELECT CONVERT_TZ(displaytime,'GMT','CDT'); 它返回 null

其他转换工作虽然像 SELECT CONVERT_TZ(displaytime,'GMT','MET'); 运行良好

我检查过时区表不包含有关 CDT 的信息。但我不确定如何修复它。我应该手动将其添加到表中吗?我应该使用不同的来源来导入时区信息吗?

最佳答案

您需要使用 valid IANA TZDB identifiers 的时区 ID .对于美国中部时间,请使用 'America/Chicago'

您应该避免使用 3 个字符的时区缩写,因为 TZDB 中只有少数几个,而且通常它们可能会产生歧义(CST 也是中国标准时间、古巴标准时间、等等...)

此外,虽然 UTCGMT工作,但完全限定的格式是 Etc/UTC。在实践中,您可以使用其中任何一种。

关于mysql - CDT 在 MySQL 时区中不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38075364/

相关文章:

php - 在 PHP 中处理在不同时区存储/显示日期的最佳方法?

java - 如何从 "(GMT+10:00) Brisbane"或 "(GMT+01:00) Brussels, Copenhagen, Madrid, Paris"等区域名称获取 Java 中的 TimeZone 对象

java - 通过 SimpleDateFormat 解析时间字符串得到错误的日期。 (偏移 1 小时)[Android/Java]

php - WAMP PHPMyadmin 用户已删除

Mysql从2个表运行总计

mysql - MySQL查询多列索引表

php - 给出警告 : mysqli_fetch_array() expects parameter 1 to be mysqli_result, bool 值

qt - 如何在 Qt 中获取所有时区列表?

java - 在 OpenShift 平台中使用 MySql 的 Spring Webapp

java - JSF/Oracle 中的日期和时区