データベースに行を挿入すると、その行にデータが追加されます。行を削除するとそのデータベースの空き領域が解放されますか?または、使用されているスペースの量を変更せずに行を削除するだけですか?データベース内の行を削除すると、そのデータベースは空き領域になりますか?
答えて
SQLの場合は、その観点から異なります。たとえば、ディスク・スペースを使い果たす前に100万行を挿入することができれば、それらの半分を削除すると、もう半分を挿入するスペースがもう1つ増えます。 (トランザクションロギングを無視すると、ロギングが他の場所で行われていることが想像できます)
データファイルは、成長した後も縮小しません。したがって、データファイルによって使用されるドライブスペースは、OSまたは他のアプリケーションで使用できません。データベースの縮小操作が行われるまで、これにより、ファイル内のデータが再編成され、OSまたは他のアプリケーションが使用するためにドライブ上のスペースが解放されます。
Ask Tomは、Oracleの言う:
あなたがテーブルからデータを削除する場合 - ブロックは が落ちた解放されたことをブロックの上のスペースの量を想定して(そのテーブルのため 空きリストに移動しますpctusedの下に)。これらのブロックは、このテーブルへの後続の挿入および更新のために使用されます( )。
インデックスからデータを削除すると、インデックスエントリ がオンになっているブロックが "空"になりました - そのブロックはフリーリストに戻ってインデックス構造体のどこでも使用できます。それ以外のブロックはそのままで、 がそのブロックに自然に行き渡るデータ(それは b *ツリーのどこかにあるため)がそこに行きます。
削除するとスペースが有効に再利用されます。あなたのデータベースでは、 はdba_free_spaceに新しい空き領域を表示しません。空きリストにはブロック が、インデックス構造には空きスペースが多くなります。
わかりやすくするために、これはOracleデータベースに適用されます。 –
あなたが正しいです、私はタグをはっきりと見ませんでした。 – roymustang86
Oracleを使用すると、削除された行のスペースは、すぐにspecific commandsを使用して再要求できます。それ以外の場合は、@ oymustang86のように新しい行のために予約されたままになります。
- 1. div要素の空き領域を削除するには?
- 2. OpenEdgeデータベースから領域を削除する
- 3. char変数から空き領域を削除する方法
- 4. RadEditor下部の空き領域を削除する方法
- 5. Vim:ビジュアルで選択した領域内の空行を削除する
- 6. wearablelistviewから空のトップ領域を削除します
- 7. データベース内の行を削除する
- 8. データベース内の行を削除する
- 9. データベース内の行を削除する
- 10. UITableViewの前に空き領域を取り除く方法は?
- 11. 行グループの列が非表示になっているときにSSRSマトリックスの空き領域を削除する方法はありますか?
- 12. SQLiteデータベースが変更されたときに、そのデータベースが削除されるのはなぜですか?
- 13. C++には空き領域がありますか?
- 14. SQL Serverデータベースの空き領域を見つける最も良い方法は?
- 15. TinyMCEテキスト領域の先頭と末尾の空白を削除します。
- 16. データベース内の複数の行から数量を削除する
- 17. テキスト領域の角領域の空白を取り除く方法
- 18. ブートストラップ3 popoverテーブル行の空き領域
- 19. データベースから削除せずに削除ボタンを押すと、インデックスページのテーブルから行を削除するには
- 20. Googleドライブに領域データベースのデータをバックアップするには?
- 21. RとGviz:プロットの領域を削除(/トリミング)する方法は?
- 22. データベースから1行を削除する
- 23. oracleデータベースのエクスポートまたはインポートを完全に行う方法1つの表領域を除外する
- 24. JFrameの空き領域を削除するにはどうすればよいですか?
- 25. スタックの空き領域 - 式内のテキストを置換する
- 26. ハンバーガー(引き出しのナビゲーションアイコン)をツールバーから削除して、その領域(四角形)を削除することはできますか?
- 27. DataGridviewとデータベースからすべての行を削除します
- 28. jTableからデータベース内のデータを削除するには?
- 29. JetBrains IDEのこの領域を削除するには?
- 30. jqueryの削除ボタンはデータベースから行を削除できません
これはmysqlまたは(microsoft)sqlサーバーに関するものですか?あなたは両方のタグを付けました! – bfavaretto
なぜ「MySQL」と「SQL-Server」の両方にタグを付けましたか?詳細は両者で異なるため、これは2つの異なる質問です。 –
@MartinSmithこれは、異なるDBシステムが削除された行のスペースをどのように処理しているかということについて素晴らしい質問になるかもしれません。 –