在MySQL中转换时区而不访问时区表

时间:2019-06-10 20:23:07

标签: mysql timezone

我想做的是将某些时间戳转换为用户的本地时间。 因此,我要做的是向用户询问他的时区(从相应的表中选择所有时区,然后让用户从列表中选择),然后

SELECT CONVERT_TZ('2004-01-01 12:00:00','UTC','MET')

现在是问题所在。我无权访问MySQL时区表(表'time_zone'的用户”命令被拒绝-可能托管不允许我)。因此,尽管可以执行上述命令,但无法获取MySQL知道的所有时区名称。

我要使用时区名称而不是偏移量的原因是不必担心夏令时。

那么我该如何解决这个问题?我一直在寻找SQL请求来创建带有时区名称的表的副本,但如上所述,发现只有一个具有GMT偏移量的表,对我来说不起作用。

1 个答案:

答案 0 :(得分:0)

我找到了此链接timezonedb.com,可以在其中下载时区的sql表。该sql有一个小缺点-表格国家/地区没有数字索引,但这很容易解决。 感谢马特·约翰逊的提示!