gpt4 book ai didi

mysql - 如何使用sqlx检查行是否存在?

转载 作者:IT王子 更新时间:2023-10-29 02:00:59 25 4
gpt4 key购买 nike

使用 sqlx ,我想知道查询 MySql 数据库以了解对 MySql 的查询是否返回空行:

接着this , 我想到了

var result model.Post
err := database.SQL.Get(&result, "SELECT * FROM post WHERE post_id=? AND user_id=? LIMIT 1", postID, userID)
if err == sql.ErrNoRows {
log.Println(err)
log.Println("post not found")
} else {
log.Println("post found")
}

但我总是得到 post found,尽管实际上没有行。

这里可能出了什么问题,我该如何解决?

最佳答案

如果找到行错误将为零

这是工作示例:

var result model.Post
err := database.SQL.Get(&result, "SELECT * FROM post WHERE post_id=? AND user_id=? LIMIT 1", postID, userID)

switch err {
case nil:
log.Printf("user found: %+v\n", user)
case sql.ErrNoRows:
log.Println("user NOT found, no error")
default:
log.Printf("error: %s\n", err)
}

关于mysql - 如何使用sqlx检查行是否存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54602979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com