【c++】sqliteのupdateはlimit出来ない

c++

※ただし、自分でソースコードをビルドして入れたものは大丈夫だそうです。

1.0 The SQLite Amalgamation

すごいつまづきました。

select, insert, create table等は出来るのにupdateが出来ない。
みてみたらsqlite3_prepare_v2()がSQLITE_OKを返していない。

問題となったクエリは以下です。

update user set name = 'daiki1003' where id = 1 limit 1;

※たとえ、idを絞っていてもdeleteやupdateを叩く際は必ずlimitを付ける癖を付けています。

文法的にどこも間違っていないのに突っぱねるsqlite3_prepare_v2()。
調べてみたらamalgamationだとlimitは出来ないそうです。

SQL As Understood By SQLite

SQLITE_ENABLE_UPDATE_DELETE_LIMIT オプションが必要だそう。

誰かのお役に立てば。

コメント

タイトルとURLをコピーしました