为了账号安全,请及时绑定邮箱和手机立即绑定

Go:未使用的变量

Go:未使用的变量

Go
心有法竹 2021-11-22 18:17:48
我正在尝试在下面的代码中执行 SQL 语句。但是,sqlRes未使用,因此无法编译。我不需要变量,但我需要声明它,因为Exec()返回多个值。我该如何处理?stmt, err := db.Prepare("INSERT person SET name=?")sqlRes, err := stmt.Exec(person.Name)
查看完整描述

2 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

替换sqlRes为空白标识符( _)。从规范:


空白标识符提供了一种忽略赋值中右侧值的方法:


_ = 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)


查看完整回答
反对 回复 2021-11-22
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

避免no new variables错误的另一种方法是将检查包装在一个 if块中:


if _, err := stmt.Exec(person.Name); err != nil {

   panic(err)

}

https://golang.org/ref/spec#If_statements


查看完整回答
反对 回复 2021-11-22
  • 2 回答
  • 0 关注
  • 128 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信