我正在查询下面的表,以检查它是否填充了记录。

NSString *selectSQL = @"SELECT EXISTS(SELECT 1 FROM tableName LIMIT 1)";
const char *selectSQLConstant = [selectSQL UTF8String];
sqlite3_stmt *statement = nil;
if(sqlite3_prepare_v2(_database, selectSQLConstant, -1, &statement, NULL) == SQLITE_OK) {
    if (sqlite3_step(statement) == SQLITE_ROW) {
        //even if the table is empty, condition is always true.
    }
}
sqlite3_finalize(statement);


这是正确的方法还是我仍然需要添加的内容?

更新:

最后,我更改了查询

NSString *selectSQL = @"SELECT COUNT(*) FROM tableName LIMIT 1";


但是还有一个?我的问题。

最佳答案

NSString *selectSQL = @"SELECT COUNT(*) FROM tableName LIMIT 1";
检查表中是否至少有1个条目...如果那是您想要的,就可以了

关于ios - 如何检查记录是否存在于SQLite数据库的表中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32716561/

10-10 14:59