すべての最適化ガイドで、人々は JOURNAL_MODE や SYNCHRONOUS などのプラグマについて話していますが、TEMP_STORE プラグマについては何も読んだことがありませんか? 影響が大きいと思うのに、なぜ言及されないのですか?
その目的は、すべての SQLite の内部一時テーブルをディスク (一時ディレクトリ) からメモリに移動することです。
すべての最適化ガイドで、人々は JOURNAL_MODE や SYNCHRONOUS などのプラグマについて話していますが、TEMP_STORE プラグマについては何も読んだことがありませんか? 影響が大きいと思うのに、なぜ言及されないのですか?
その目的は、すべての SQLite の内部一時テーブルをディスク (一時ディレクトリ) からメモリに移動することです。
SQLite は書き込み時にデータベース全体をロックするため、次のタスクに進む前にプラッターにデータを取得することをお勧めします。
データをメモリに格納することは、(TEMP_STORE の名前が示すように) 一時的なデータ ストアのみが必要な場合に備えて予約されている可能性が最も高いです。データを定期的にディスクにフラッシュする方法を提供する必要があります (データを保存する場合)。また、ロックは粒状ではないため、データベース全体をフラッシュする必要があります。
つまり、TEMP_STORE はキャッシュ メカニズムではありません。