0

更新后,我的 sqlite 数据库没有改变。一切似乎都很好,没有错误消息,我可以打印出来

   int rows= sqlite3_changes(database); 
    NSLog(@"rows %d" , rows);

更新的行数。不过,如果我在更新后读取表(从 sqlite 控制台指向我复制文件的库文件夹。但即使我使用新的 Objective-c 方法读取它),它就像没有运行更新一样。

这是我的完整方法。我什至尝试过 sql insert 但遇到了同样的问题。您对我可以尝试什么或有什么问题有任何想法吗?

谢谢。

   -(void)saveBookmark:(FfBookmark *) bookmark {

int resconn = sqlite3_open([pathDB UTF8String], &database);

if (resconn == SQLITE_OK) {

    NSString * query = @"update  bookmarks set position=?  ";
    const char * sqlStatement = [query UTF8String];

    sqlite3_stmt * compiledStatement;

    if (sqlite3_prepare_v2(database, sqlStatement, -1 , &compiledStatement,   NULL) == SQLITE_OK) {

        sqlite3_bind_int(compiledStatement, 1, bookmark.position);



    } 

    if (!sqlite3_step(compiledStatement) == SQLITE_DONE) {

        NSLog(@"Error @%" , sqlite3_errmsg(database));
    }
    int rows= sqlite3_changes(database);

    NSLog(@"rows %d" , rows);


sqlite3_finalize(compiledStatement);


}


sqlite3_close(database);

  }
4

0 回答 0