0

私の関数は、既存の SQL データベースにエントリを追加しません。何か案は?

    sqlite3 *database;

    sqlite3_stmt *compiledStatement;
    if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {

        NSString *tmpSQLStatement = [NSString stringWithFormat:@"INSERT INTO data (test) VALUES ('teststring');"];
        const char *sql = [tmpSQLStatement UTF8String];

        if(sqlite3_prepare_v2(database, sql, -1, &compiledStatement, NULL) != SQLITE_OK)
            NSAssert1(0, @"Error while creating add statement. '%s'", sqlite3_errmsg(database));


}                                                                                                   
    }

ERRORMESSAGE は呼び出されません。しかし、残念ながら何も追加されていません。

4

1 に答える 1

1

の後、 を呼び出してステートメントを実際に実行するsqlite3_prepare_v2必要があります。それまでに値を挿入する必要があります。sqlite3_step

于 2009-11-21T12:45:58.477 に答える