SQLite3

SQLite3: How to know transaction is already started

You can use get_autocommit() to know transaction is already started or not. When transaction is started: This function return 0 because auto-commit is disabled. When transaction is not started: This function return non-0 because auto-commi…

SQLite3: トランザクションが開始されているかどうかを判断する

現在SQLite3のトランザクションが開始されているかどうかを判断するには、get_autocommit()を使用する。 トランザクションが開始されている場合: 自動コミットが無効になるので0が返る。 トランザクションが開始されていない場合: 自動コミットが有効になる…

SQLite3: トランザクション中に更新処理を行うとSQLITE_BUSY(5)が発生する

iOS 13.3, XCode 10.3で確認。 テーブルロック時のSQLITE_BUSY(5) SQLite3ではトランザクションによってテーブルロックがかかっている場合、そのテーブルを更新しようとするとSQLITE_BUSY(5)が発生する。 SQLITE_BUSY(5)については以下を参照。 www.sqlite.o…