Kiedy używać SQLITE_TRANSIENT vs SQLITE_STATIC?
Chciałbym utworzyć / zaktualizować kolumny tekstowe w sqlite3. Podczas pobierania wierszy po utworzeniu / aktualizacji tekst jest „?”. Wartości całkowite są jednak prawidłowo zachowywane.
Moje instrukcje tekstowe wyglądają tak:
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);
Próbowałem zarówno SQLITE_TRANSIENT, jak i SQLITE_STATIC. Oba przypadki wydają się dawać takie same wyniki („?”). Sprawdziłem również, czy wartości tekstowe są poprawne, gdy są przekazywane do odpowiednich instrukcji sql tutaj.
Jakieś pomysły?