方法 : クラスター化インデックスのデータを並べ替える
Microsoft SQL Server データベースでクラスター化インデックスを作成または変更するときは、インデックスのデータを並べ替えるタイミングを制御するオプションを設定します。インデックス作成時にデータを並べ替える方法と、テーブルが断片化したときにデータを並べ替えて再構成する方法があります。テーブルの断片化の原因と推奨される解決方法については、『SQL Server Books Online』の「DBCC CHECKDB」を参照してください。
インデックス作成時にデータを並べ替える方法では、データをコピーする必要がなく、またクラスター化されていないインデックスを再構築する必要もないため、処理が速くなります。
[!メモ]
SQL Server 2012 形式のデータベースのための新しいバージョンのテーブル デザイナーが表示されます。このトピックでは、SQL Server の以前の形式のデータベースで使用する旧バージョンのテーブル デザイナーについて説明します。
新しいバージョンでは、テーブル定義をグラフィカル インターフェイスから変更することも、スクリプト ペインで直接変更することもできます。グラフィカル インターフェイスを使用すると、スクリプト ペインでのテーブルの定義が自動的に更新されます。スクリプト ペインで SQL コードを適用するには、[更新] ボタンをクリックします。新しいバージョンの詳細については、「テーブル デザイナーを使用してデータベース オブジェクトを作成する方法」を参照してください。
[!メモ]
お使いのマシンで、Visual Studio ユーザー インターフェイスの一部の要素の名前や場所が、次の手順とは異なる場合があります。これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。詳細については、「Visual Studio の設定」を参照してください。
インデックス値を並べ替えるには
サーバー エクスプローラーで、並べ替えるインデックス値を含むテーブルを右クリックして、ショートカット メニューの [テーブル定義を開く] をクリックします。
ショートカット メニューの [インデックス/キー] をクリックします。
[選択したインデックス] ボックスの一覧で、インデックスをクリックします。
[CLUSTERED として作成] オプションが選択されていることを確認します。
SQL Server 6.5 を使用する場合は、表示される次の並べ替えオプションのいずれかを選択する必要があります。
オプション
動作
[データの並べ替え]
既定のオプション。インデックス作成時にデータを並べ替えます。
[並べ替え済みのデータ]
クラスター化インデックス作成時の並べ替えは行わず、各インデックス値が前の値より大きいかどうかをチェックして、データが並べ替えられているかどうかを検査します。このチェック内容を満たさない行が存在する場合は、テーブルを保存してもインデックスは作成されません。
データがチェック内容を満たす場合、データのコピーとクラスター化されていないインデックスの再構築は行われません。このため、このオプションの方が [並べ替え済みのデータを再編集] オプションより処理が速くなります。テーブルを格納するページの圧縮または展開のために FILL FACTOR が指定されている場合は、このオプションが役立ちます。
FILL FACTOR の詳細については、「インデックスの FILL FACTOR の指定」を参照してください。
[並べ替え済みのデータを再編集]
[並べ替え済みのデータ] とほぼ同じですが、データのコピーとクラスター化されていないインデックスの再構築が行われるため、このオプションの方が処理が遅くなります。テーブルが断片化されているときにインデックス値を再度並べ替える場合は、データを再構成することをお勧めします。
[!メモ]
[並べ替え済みのデータ] を選択すると、クラスター化インデックスが SORTED_DATA オプションで作成されます。[並べ替え済みのデータを再編集] を選択すると、クラスター化インデックスが SORTED_DATA_REORG オプションで作成されます。いずれかのオプションを選択した場合に、チェック内容を満たさない行があると、テーブルを保存してもインデックスは作成されません。この場合は、データを修復するか、[データの並べ替え] オプションを選択してください。
最後に [閉じる] をクリックします。