SQLiteを使用してトランザクションを明示的に作成しています。つまり、挿入をバッファリングするSQLiteを取得するには?
sqlite3_exec(db、 "BEGIN"、NULL、NULL、NULL);
インサート
sqlite3_exec(DB、 "END"、NULL、NULL、NULL)の束を行います。
データベースには、ENDがヒットするまでこのペアの間に挿入をバッファリングし、すべてをディスクにフラッシュします。
定期的にディスクにフラッシュする代わりに、このようには見えません。
私は時々、別のプロセスから同じデータベースでselect文を実行できないことに気付きました。トランザクションの使用戦略に関連している可能性があります。このような場合、選択はデータベースのLOCKまたはBUSY状態のために失敗します。
誰でもSQLiteを扱う方法を知っていますので、パフォーマンスを向上させるために挿入をバッファしますか?
多くのありがとうございます!