【问题标题】:Mysql locale session variable?Mysql语言环境会话变量?
【发布时间】:2010-04-14 15:37:48
【问题描述】:

在这里寻找国际化错误。

mysql 是否有一个可以为每个会话设置的变量,这意味着每个连接都会知道它的客户端的时区并会据此采取行动。

如果确实存在这样的变量,我希望下面的 sql 语句将根据连接会话语言环境返回不同的值。

select date('2010-04-14') + 0;

谢谢你, 马克西姆。

【问题讨论】:

    标签: mysql internationalization


    【解决方案1】:

    除非您指定时区,否则 MySQL 中的 DATE() 函数会返回服务器时间。

    CONVERT_TZ() 很有用。让用户选择他们的时区并将其存储在服务器上,然后将日期列转换为用户的时间。

    您可以为会话设置一个 time_zone 系统变量,默认为“SYSTEM”。

    使用SET @@variable 设置值。

    例如:

    SET @@time_zone = 'GMT';
    

    但是,服务器不会根据客户端的位置或时区自动设置此项。

    【讨论】:

      猜你喜欢
      • 2021-07-04
      • 1970-01-01
      • 2020-02-26
      • 1970-01-01
      • 2012-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多