moh*_*hur 87 mysql ubuntu-12.04 convert-tz
我知道这听起来很愚蠢,但是当我使用时
SELECT CONVERT_TZ('2004-01-01 12:00:00','UTC','Asia/Jakarta') AS time
Run Code Online (Sandbox Code Playgroud)
它输出NULL.我在Ubuntu 12.04 64位中使用MySQL Workbench,它可以在我的其他笔记本电脑/操作系统(也使用MySQL Workbench)中运行.
Bar*_*mar 156
如果您尚未将时区表加载到mysql中,则会发生这种情况.
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
Run Code Online (Sandbox Code Playgroud)
Jim*_*ert 24
我花了一些时间试图弄清楚为什么在接受的答案中运行命令(在MySQL的开发站点上是相同的)之后找到了这个线程,该命令无法在时区之间进行转换,例如
SELECT CONVERT_TZ('2004-01-01 12:00:00','UTC','MET') AS time
Run Code Online (Sandbox Code Playgroud)
事实证明,在OS X上有两个导致问题的文件:/usr/share/zoneinfo/Factory
和/usr/share/zoneinfo/+VERSION
.
修复...暂时将这些文件移动到不同的位置,例如/usr/share/zoneinfo/.bak/
允许命令
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
Run Code Online (Sandbox Code Playgroud)
完全填充所有预期的时区信息.
这可能是也可能不是我安装的MySQL版本中的错误:
$ mysql --version
mysql Ver 14.14 Distrib 5.6.11, for osx10.6 (x86_64) using EditLine wrapper
Run Code Online (Sandbox Code Playgroud)
我也在经营STRICT_MODE
.
在任何情况下,我希望这为搜索修复程序的任何人节省了一些麻烦.
Rak*_*hit 13
除Windows环境外,您还可以设置时区
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
在Windows环境中
1. download Time zone description tables from
http://dev.mysql.com/downloads/timezones.html
2. Stop MySQL server
3. Put then inside Mysql installation package
(即C:\ Program Files\MySQL\data\mysql)`
4. Start MySQL server
..你的工作已经完成..
如果您仍然NULL
需要CONVERT_TZ
下载这些数据库表并将其插入到mysql数据库http://www.4shared.com/folder/Toba2qu-/Mysql_timezone.html
现在你的问题将被解决.. :)
归档时间: |
|
查看次数: |
36862 次 |
最近记录: |