Posted at

Golangで`Scan error`が出た時の対応

More than 3 years have passed since last update.

Golangで開発している時に

sql: Scan error on column index 1: unsupported Scan, storing driver.Value type []uint8 into type *time.Time

というエラーが出たので、対応した


解決策

DNSの末尾に?parseTime=trueを入れる

https://github.com/go-sql-driver/mysql/issues/9#issuecomment-51552649

から引用


原因

Scanするときのdeleted_atの時間の型と、structの時間の型が違うことが原因。

型をあわせる処理をmysql側でするか、golang側でする必要があるが、とりあえずmysql側でするには?parseTime=trueをつければいいらしい。