sqlite3にテキスト列を作成/更新したいと思います。 作成/更新後に行を取得すると、テキストは '?'になります。 ただし、整数値は正しく保持されます。SQLite_TRANSIENTとSQLITE_STATICのどちらを使用するのですか?
マイテキスト文は次のようになります。
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);
私はSQLITE_TRANSIENTなどSQLITE_STATICを試してみました。どちらの場合も同じ結果が得られます( '?')。また、ここで適切なSQL文に渡されるときにテキスト値が有効であることを確認しました。
アイデア?
準備文はどのように見えますか? –