iphone - iPhone上的sqlite删除问题

标签 iphone database sqlite

在我的 iPhone 应用程序中,我试图从 SQLite 数据库中删除一行。执行删除语句后,该行似乎已被正确删除,但在我重新启动应用程序后,该行仍然存在。 我正在使用代码 blow 删除记录。知道可能是什么问题吗?

NSString *deleteSQL = [NSString stringWithFormat:@"DELETE FROM table1 WHERE actId=%d", actId];

char *errorMsg;

if (database == nil) {
    NSLog(@"ERROR db not initialized but trying to delete record!!!");
}else{
    if (sqlite3_exec(database, [deleteSQL UTF8String], NULL, NULL, &errorMsg) != SQLITE_OK){
        NSAssert1(0, @"Error updating tables: %s", errorMsg);
        sqlite3_free(errorMsg);
        return NO;
    }   
}

NSLog([NSString stringWithFormat:@"DELETE Successful"]);

最佳答案

我已经解决了这个问题。虽然我不完全了解所有细节。问题是在我的“加载代码”中,我忘记为语句调用 sqlite3_finalize。不知道为什么,但这会以某种方式影响 future 的插入和删除。在数据加载方法中加入sqlite3_finalize解决了问题。

关于iphone - iPhone上的sqlite删除问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1026451/

相关文章:

大表上的 MySQL 性能问题 - 如何有效地缓存结果?

mysql - InnoDB "autoextend"函数

sqlite - 我们怎么知道sqlite DB的锁状态呢?

ios - Swift:获取 CoreData 作为数组

ios - 清除设备上的数据库(Sqlite)

iphone - 下载文件时如何为 NSURLConnection 制作进度条?

iPhone - GDataXMLNode 和 GDataXMLElement 之间的区别以及如何使用它们

mysql - 数据库中换行符的计数

iphone - iOS - 如何在处理该单元格中的按钮事件时访问自定义单元格?

javascript - 为什么我的自定义 soundcloud 播放器无法在 iPhone 上发出声音