mysql中查询完数据如何判断数据是否存在?

在go中用的mysql数据库,传进两个参数,如果有这两个数据了,就会返回查询结果,如果没有这两个数据中的一个,什么都不返回,我该拿什么判断这两个数据是否存在?图片说明

2个回答

对于Query而言,没有数据是不会返回error,同时sql.rows也没有返回关于长度的属性,因此只能自己遍历rows属性。
对比而言QueryRow就相对于友好一点,如果没有返回结果,error的值会是sql.ErrNoRows,因此,判断这个值就能得到数据库中是否有我们需要的那个数据.var name string
err := db.QueryRow(`select  name from user where uid=7`).Scan(&name)   //db为sql.DB
if err == sql.ErrNoRows {
   log.Print("没有结果")
} else {
   log.Print("youjieguo:",name)
}
————————————————
版权声明:本文为CSDN博主「叶知_秋」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/rocky0503/article/details/80884678

预先用 select count(1) from xx 来判断count数量

确保count>0时,再查,等于0时直接return

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问