Je voudrais créer/mettre à jour des colonnes de texte dans sqlite3. Lorsque je récupère des lignes après la création/mise à jour, le texte est '?'. Les valeurs entières sont correctement conservées.Quand utiliser SQLITE_TRANSIENT vs SQLITE_STATIC?
Mes déclarations texte ressemblent à ceci:
const char *sql = "INSERT INTO todo(title, description, priority, status, created, expires, posx, posy, updated)"
" VALUES('?', '?', '?', '?', '?', '?', '?', '?', '?');";
if (sqlite3_prepare_v2(database, sql, -1, &insert_statment, NULL) != SQLITE_OK)
...
sqlite3_bind_text(update_statment, 5, [[dt stringFromDate:self.updated] UTF8String], -1, SQLITE_TRANSIENT);
J'ai essayé SQLITE_TRANSIENT ainsi que SQLITE_STATIC. Les deux cas semblent donner les mêmes résultats ('?'). J'ai également vérifié que les valeurs de texte sont valides lorsqu'elles sont passées dans les instructions sql appropriées ici.
Des idées?
À quoi ressemble votre instruction préparée? –