我正在尝试在下面的代码中执行SQL语句。但是,sqlRes
未使用,因此无法编译。我不需要变量,但我需要声明它,因为Exec()
返回多个值。
我该如何处理?
stmt, err := db.Prepare("INSERT person SET name=?")
sqlRes, err := stmt.Exec(person.Name)
答案 0 :(得分:9)
将sqlRes
替换为blank identifier(_
)。来自the spec:
空白标识符提供了一种忽略赋值中右侧值的方法:
_ = x // evaluate x but ignore it x, _ = f() // evaluate f() but ignore second result value
示例:
stmt, err := db.Prepare("INSERT person SET name=?")
_, err = stmt.Exec(person.Name)
答案 1 :(得分:0)
另一种避免 no new variables
错误的方法是将支票包装在
if
块:
if _, err := stmt.Exec(person.Name); err != nil {
panic(err)
}