在开发中用到了row := this.db.QueryRow(sqltext, idinput)方法
er := row.Scan(&id, &user_id)
这里有一个问题,当没有满足条件的数据时,er 它不为nil, 此时在外部用时就没法区分是没有相关的数据还是其它什么错误(数据库连接问题等)
有疑问加站长微信联系(非本文作者)

在开发中用到了row := this.db.QueryRow(sqltext, idinput)方法
er := row.Scan(&id, &user_id)
这里有一个问题,当没有满足条件的数据时,er 它不为nil, 此时在外部用时就没法区分是没有相关的数据还是其它什么错误(数据库连接问题等)
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
`单行代码`
大侠些在开发中是怎么处理这种情况的呢?
可以仿照 IO 的做法:当读到末尾时,返回 EOF。
如果没有满足条件的数据,可以返回一个 err,特定类型的 error,和其他错误区分开。
原来有个error 就是 sql.ErrNoRows