前提・実現したいこと
TypescriptからMySQL(5.7)に接続しています。
発生している問題
[概要]
INSERT, UPDATEする時は、MySQLのタイムゾーンに従っていますが、
SELECT (FETCH)してくる時は、タイムゾーンがずれます。
実際に起きていること
(1) 以下のようなSQL文でTypescriptからUPDATEします。
SQL
1UPDATE tests SET createdAt = (NOW()) WHERE (id = 1)
すると、MySQLには、タイムゾーンに設定された時刻で
2021-09-14 02:45:29 (GMT + 2:00)
と記録されています。
(2) 次に上記のデータをFETCHします。
SQL
1SELECT * FROM tests WHERE (id = 1)
とってきたデータをコンソール出力すると、
createdAt: '2021-09-14T02:45:29.000Z '
と表示されます。
末尾のZは、GMTだと理解していますが、、、
もともと GMT + 2:00 で記録していたと考えたデータが、
Fetchする時に GMTとなっております。。
処理すればするほど、プログラム内部で2時間ずつ時間がずれてしまうのですが、
どこのタイムゾーン設定が漏れているのかアドバイスをいただけますでしょうか?
よろしくお願いいたします。
あなたの回答
tips
プレビュー