go-sql-driver/mysqlでcreated_at (datetime) がUTCで登録されてしまう件

go-sql-driver/mysqlでcreated_at (datetime) がUTCで登録されてしまう件

環境

  • go-sql-driver/mysql version 1.2

結論

以下のように parseTime=trueloc=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/

Author

Kenzo Tanaka

Posted on

2015-08-19

Licensed under

コメント