使用golang在mysql中插入数据时出现日期时间错误



得到这个错误:-不正确的datetime值:'2022-05-23T20:51:48+05:30'对于列' date'在第1行

我的表格是这样的:-

create table if not exists amplitude_enable (
cid int not null primary key, 
idc varchar(255), 
apiurl longtext, 
timezone varchar(255), 
status varchar(255), 
cdate datetime not null, 
udate datetime not null, 
primary_key varchar(255) not null, 
apikey varchar(255) not null
);

代码:

dt := time.Now().Format(time.RFC3339)
primary_key := "email" //function
queryStr := fmt.Sprintf("INSERT INTO amplitude_enable (cid, idc, apiurl, timezone, cdate, udate, primary_key, apikey) value(%f, '%s','%s','%s','%s','%s', '%s', '%s') on duplicate key update apiurl='%s', idc='%s', timezone='%s', udate='%s', apikey='%s'", cid.(float64), idc.(string), apiurl.(string), timezone.(string), dt, dt, primary_key, apikey.(string), apiurl.(string), idc.(string), timezone.(string), dt, apikey.(string))

如何修复这个错误?

对于SQL,使用"2006-01-02 15:04:05"ForDATETIME的格式。但是考虑使用一些参数化的数据库访问或ORM来保证安全性。

dt := time.Now().Format("2006-01-02 15:04:05")

最新更新