GO -github.com/go-sql-driver/mysql 操作DATETIME 注意事项

一、从数据库SELECT DATETIME类型字段时,赋值到time.Time 类型变量

A、方法一:

var     lastLoginTime    string

rows.Scan(&lastLoginTime)

loginTime,_:=time.ParseInLocation("2006-01-0215:04:05",lastLoginTime,time.Local)

B、方法二:连接数据库时设置参数  19:3306)/abc_db_ci?parseTime=true

var   lastLoginTime   time.Time

rows.Scan(&lastLoginTime)

二、把time.Time 类型插入数据表 datetime字段时

var   strSql    string

strSql=`INSERTINTOagt_loan_agreement_detail(modify_date)values(?)

//预处理

stmt,err:=tx.Prepare(strSql)

iferr!=nil{

          log.Println("PrepareInsertagt_loan_agreement_detailerror:",err.Error())

          tx.Rollback()

         returnDB_FAIL,err

}

res,err:=stmt.Exec(time.Now())   插入后,时间变为UTC时间,和本地时间不一致,解决方法:

连接数据库时,设置 “db_ci?parseTime=true&loc=Local”

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容