golang mysql timestamp
2017年8月2日
问题:
通过gorm创建一条记录后,创建时间的unix_timestamp值比当前的时间的时间戳还大。
原因:
查看连接数据库的dsn: "%s:%s@tcp(%s)/%s?charset=utf8&loc=Local&parseTime=true"
,创建记录的时候的时间戳是本地时间的,但是计算Duration的时候使用utc的当前时间戳减去记录的时间戳,Duration变成负值。
解决:
dsn改为: %s:%s@tcp(%s)/%s?charset=utf8&loc=UTC&parseTime=true