2009-02-26 7 views
1

Je reçois seulement la deuxième valeur insérée dans la base de données. dataHold.Id a une valeur, tout comme aTextField. Toutefois, lorsque je regarde la base de données, l'identifiant n'est pas inséré. La sqlite ci-dessous est-elle correcte?Pourquoi sqlite n'insère qu'une seule colonne?

const char *sql = "insert into Userdata (Id, Name) Values(?, ?)"; 
    sqlite3_stmt *selectstmt; 
    if(sqlite3_prepare_v2(database, sql, -1, &selectstmt, NULL) == SQLITE_OK) { 
     sqlite3_bind_int(selectstmt, dataHold.Id, 1); 
     sqlite3_bind_text(selectstmt, 2, [aTextField.text UTF8String], -1, SQLITE_TRANSIENT); 
     sqlite3_step(selectstmt); 

Répondre

7

Si cette

sqlite3_bind_int(selectstmt, dataHold.Id, 1); 

être

sqlite3_bind_int(selectstmt, 1, dataHold.Id); 

?

Questions connexes