Go 如何在sqlx中增加字段值

Go 如何在sqlx中增加字段值,go,sqlx,Go,Sqlx,在Go应用程序中,使用sqlx包和mysql数据库,我想更新表user,并将其posts字段增加1: err = shared.Dbmap.Exec("UPDATE user SET posts=posts+1 WHERE id=?", userId) if err != nil { log.Println(err) return } 但是在编译时,我得到: 单值上下文中的多值shared.Dbmap.DB.Exec() 我看了,看不到相关的例子 如何修复它?这是如何在单值上下

在Go应用程序中,使用
sqlx
包和mysql数据库,我想更新表
user
,并将其
posts
字段增加1:

err = shared.Dbmap.Exec("UPDATE user SET posts=posts+1 WHERE id=?", userId)
if err != nil {
    log.Println(err)
    return
}
但是在编译时,我得到:

单值上下文中的多值shared.Dbmap.DB.Exec()

我看了,看不到相关的例子


如何修复它?

这是如何在单值上下文中读取消息
multiple value shared.Dbmap.DB.Exec():

  • shared.Dbmap.DB.Exec()有多个值
  • 您正试图在单个值上下文中使用它
在代码中有
err=shared.Dbmap.Exec(…)

赋值的左侧有一个值, 在右侧有多个

查看函数,
Exec(…)
函数返回2个值, 但是你把它赋给一个值

这样写:

_, err = shared.Dbmap.Exec("UPDATE user SET posts=posts+1 WHERE id=?", userId)
您需要阅读实际的,而不仅仅是github包摘要。