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

为什么我在做 err == sql.ErrNoRows 时不能使用类型 *sql.Row

为什么我在做 err == sql.ErrNoRows 时不能使用类型 *sql.Row

Go
缥缈止盈 2021-11-01 16:40:00
我试图按照此处给出的答案中的示例进行操作: Golang: How to check for empty array (array of struct)关于如何检查数据库返回是否为空所以我有这个:err = db.QueryRow("SELECT FROM accounts WHERE steamid=?", steamid)switch {        case err == sql.ErrNoRows:        case err != nil:        default:                //do stuff}但我收到错误:cannot use db.QueryRow("SELECT FROM accounts WHERE steamid=?", steamid) (type *sql.Row) as type error in assignment:    *sql.Row does not implement error (missing Error method)不知道为什么它在他的例子中起作用,但在我尝试实现它时不起作用。谢谢。
查看完整描述

1 回答

?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

您错过了Scan示例的一部分,它实际上返回了一个错误:

err := db.QueryRow("SELECT ...").Scan(&id, &secret, &shortname)


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

添加回答

举报

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