go-sql-driver/mysqlでcreated_at (datetime) がUTCで登録されてしまう件
環境
- go-sql-driver/mysql version 1.2
結論
以下のように parseTime=true
とloc=Asia%2FTokyo
を設定する。
1 | db, err := sql.Open("mysql", "user:passward@/dbname?parseTime=true&loc=Asia%2FTokyo") |
loc=xxxx
の指定がない場合、local
が指定され、
datetime に time.Now()を指定して INSERT しても
UTC 時間に書き直されてしまう。
ちょっとハマりました。
go-sql-driver/mysqlでcreated_at (datetime) がUTCで登録されてしまう件
https://kenzo0107.github.io/2015/08/18/2015-08-19-gosql-driver-mysql-created_at-utc/