3

SQLite では、データベース ファイルのサイズはデータベース全体のサイズですが、これは実際に使用されているスペースを正確に示しているとは限りません。データが削除された場合、解放された領域はオペレーティング システムに返されません。VACUUM コマンドを実行してデータベースをデフラグし、未使用の領域をオペレーティング システムに戻す必要があります。

SQLite 用のDevart ADO.Net データ プロバイダーを使用しています。

SQLite データベースの実際の使用容量を取得する方法はありますか?

4

2 に答える 2

4

SQLiteのドキュメントによると、データベースファイル内の未使用ページの数を提供するプラグマfreelist_countを見つけました。部分的に埋められたページがまだたくさんある可能性があるため、これはデータベースファイル内の合計空き領域に関しては正確ではありません。

それでもなお、以下は空きページの正確な数を提供し、データベースファイル内の使用済みスペースと空きスペースの概算を取得するための私のニーズに十分です。

PRAGMA freelist_count;
PRAGMA page_size;
于 2011-05-07T18:31:12.947 に答える
0

page_count プラグマと page_size プラグマによって返される値を乗算すると、DB のサイズを適切に見積もることができます。

PRAGMA page_count;
PRAGMA page_size; 
于 2011-05-06T20:26:35.857 に答える