Vorrei creare/aggiornare colonne di testo in sqlite3. Quando recupero le righe dopo la creazione/aggiornamento, il testo è '?'. I valori interi sono comunque persistenti.Quando utilizzare SQLITE_TRANSIENT vs SQLITE_STATIC?
mie dichiarazioni di testo simile a questa:
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);
ho provato SQLITE_TRANSIENT così come SQLITE_STATIC. Entrambi i casi sembrano dare gli stessi risultati ('?'). Ho anche verificato che i valori di testo sono validi quando vengono passati nelle istruzioni sql appropriate qui.
Qualche idea?
Che aspetto ha la tua dichiarazione preparata? –