gpt4 book ai didi

c++ - 用于检查字段是否存在的 SQLite 查询失败

转载 作者:行者123 更新时间:2023-11-28 02:51:23 25 4
gpt4 key购买 nike

我正在使用以下查询来检查特定骨灰盒是否存在(是或否),我得到的是是(这是不正确的,因为骨灰盒不在表中)

sqlstr = "SELECT EXISTS (SELECT * FROM main.mytable WHERE `urn` = 'dssdsdds')";
char **results = NULL;
int rows, columns;
sqlite3_get_table(db, sqlstr, &results, &rows, &columns, &error);
if(rows >0 )
{
///Item is present
}

我知道骨灰盒不存在,但我仍然得到行 > 0(行 = 1)有什么建议吗?

最佳答案

SELECT EXIST 总是会返回一些东西,要么是“true”要么是“false”。

更好的解决方案(在我看来)可能是使用例如

SELECT COUNT(*) FROM main.mytable WHERE `urn` = 'dssdsdds'

然后获取单行并检查其单列值。如果它为零,则“骨灰盒”不存在。


关于数据库查询的一般提示:连接到数据库并执行查询。这样您将看到查询实际返回的内容。

关于c++ - 用于检查字段是否存在的 SQLite 查询失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22957194/

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