加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql – 使用带有Go的now()INSERT datetime

发布时间:2020-12-11 23:43:45 所属栏目:MySql教程 来源:网络整理
导读:Using sql database driver 我一直在引用上面的帖子.但令人不安的是做一个INSERT语句,其中一个字段是datetime.我试着做“NOW()”但是当我检查mysql数据库时,我正在看到00:00:00.任何人都知道我可以使用什么作为正确插入日期时间的值? 另外 我知道我可以使用

Using sql database driver

我一直在引用上面的帖子.但令人不安的是做一个INSERT语句,其中一个字段是datetime.我试着做“NOW()”但是当我检查mysql数据库时,我正在看到00:00:00.任何人都知道我可以使用什么作为正确插入日期时间的值?

另外 – 我知道我可以使用go的时间包构建日期时间,但我不想使用运行Go的机器的时间戳.我想要运行mysql的机器的日期时间.亨西,为什么我用“NOW()”.

stmt,err := db.Prepare("INSERT userinfo SET username=?,departname=?,created=?")
checkErr(err)

res,err := stmt.Exec("reckhou","IT","NOW()")
checkErr(err)

id,err := res.LastInsertId()
checkErr(err)

fmt.Println(id)
最佳答案 NOW()需要是SQL文本的一部分,它不是绑定值.

INSERT userinfo SET username=?,created=NOW()

你编写它的方式,MySQL看到“NOW()”作为文字字符串,好像它是像’foo’这样的旧字符串. MySQL正在将该字符串值转换为DATETIME(MySQL期望格式接近’YYYY-MM-DD HH:MM:SS’,并且它无法将其转换为有效日期.我们期望NULL或者像你所见的特别“零日期”.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读