MySQL日期时间与不同时区

3

我在mysql数据库里有一个DateTime对象,它包含了以下日期时间"2017-08-14 18:06:40",而服务器/ mysql的默认时区是美国,因此当我插入一个日期时间时它会按照美国时区计算。

我的问题是如果来自欧洲的用户选择该日期时间,则由于时差不同,该时间将不同,怎么办呢?

我应该如何解决这个问题。我希望欧洲用户可以获得相对于他们所在时区的日期时间。

我从搜索中发现了以下信息:

CONVERT_TZ(`comment_date`,@@global.time_zone,@@session.time_zone) AS comment_date,

然后我发现您需要设置@@session.time_zone,它不会自动检测

那么我们如何解决这个问题,有哪些选项和技术可供站点或应用程序使用以统一跨国家/地区的日期时间

1个回答

8

你可以使用datetime对象,只是不要插入值,将默认值设置为当前时间戳,并将MySQL设置为UTC时间,然后在客户端解析日期到默认时区。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接