Thursday, December 1, 2016

[MYSQL][SQLite] MYSQL 的預設時間區是 local timezone 跟 SQLite 則是 GMT

有時候我們會直接用SQL抓當下時間,例如

MYSQL:
SELECT NOW();  //顯示2016-12-01 10:00:00

SQLite:
SELECT datetime();  //顯示2016-12-01 02:00:00

可以發現兩個相差了八小時,那是因為 SQLite 抓的是 GMT 時間,MYSQL 抓的是 localtime (Asia/Taipei)。

如果要讓 SQLite 抓到 localtime,請使用下面的語法
SELECT datetime('now', 'localtime');  //顯示2016-12-01 10:00:00

No comments:

Post a Comment