无法使用golang更新mysql中的timestamp列

时间:2017-01-12 07:53:09

标签: mysql go orm beego

我在我的应用程序中使用golang。我正在使用beego框架来创建它。我使用beego ORM来执行数据库操作。我执行以下操作

 num, err := o.Raw("UPDATE apply_leave SET leavestatus=?,resultdate=?
 WHERE leaveid=?",leaveResult.LeaveResult, time.Now(),leave_id).Exec()

当我运行此操作时,我收到以下错误

"Error 1292: Incorrect datetime value: '15:46:59' for column 'resultdate' at row 1"

请注意,结果日期的类型为timestamp.Appreciate any help ...

1 个答案:

答案 0 :(得分:1)

您可以将格式时间格式化为"2006-01-02 15:04:05"显式

如下更改代码将有助于

const MySQLTimeFormat = "2006-01-02 15:04:05"
num, err := o.Raw("UPDATE apply_leave SET leavestatus=?,resultdate=?
 WHERE leaveid=?",leaveResult.LeaveResult, time.Now().Format(MySQLTimeFormat),leave_id).Exec()