HOW TO:排序叢集索引中的資料
在 Microsoft SQL Server 資料庫中建立或修改叢集索引 (Clustered Index) 時,可設定選項以控制何時在索引內排序資料。您可於建立索引時排序資料,或在資料表重組時排序及重新組織資料。如需資料表重組的起因,以及建議方案等詳細資訊,請參閱《SQL Server 線上叢書》的<DBCC CHECKDB>主題。
在建立索引時排序資料永遠為兩個選項中較快者,因為這不需要複製資料或重新建立非叢集索引。
注意事項 |
---|
新版資料表設計工具用於處理採用 SQL Server 2012 格式的資料庫。本主題說明的舊版資料表設計工具可與採用 SQL Server 舊版格式的資料庫搭配使用。 在新版本中,您可以透過圖形介面或直接在指令碼窗格變更資料表定義。如果使用圖形介面,資料表的定義就會自動在指令碼窗格中更新。若要在指令碼窗格中套用 SQL 程式碼,請選擇 [更新] 按鈕。如需新版本的詳細資訊,請參閱如何:使用資料表設計工具建立資料庫物件。 |
注意事項 |
---|
您的電腦可能會在下列說明中,以不同名稱或位置顯示某些 Visual Studio 使用者介面項目。您所擁有的 Visual Studio 版本以及使用的設定會決定這些項目。如需詳細資訊,請參閱 Visual Studio 設定。 |
若要排序索引值
從伺服器總管,在想要排序之索引值的資料表上按一下滑鼠右鍵,然後從捷徑功能表中,按一下 [開啟資料表定義]。
在捷徑功能表上選擇 [索引/索引鍵]。
從 [選取的索引] 清單中選取索引。
請確定已選取 [建立成 CLUSTERED] 選項。
如果使用的是 SQL Server 6.5,則會顯示出排序選項,您必須選擇其中一個排序選項:
選項
動作
排序資料
預設選項。在建立索引時排序資料。
資料已排序
請在叢集索引建立完成後,刪除已執行的排序,並檢查各個索引值,判斷目前的值是否高於上一個值,以驗證資料已經排序。如果有任何資料列未通過檢查,在您嘗試儲存資料表時將不會建立索引。
在資料符合檢查標準時,這個選項速度永遠比 [重新組織已排序的資料] 的選項為快,因為其不會複製資料,也不會重新建立非叢集索引。這個選項在指定填滿因數 (Fill Factor) 來壓縮或展開已存資料表上的頁面時很有用。
如需填滿因數的詳細資訊,請參閱指定索引的填滿因數。
重新組織已排序的資料
與 [資料已排序] 相同,不過這個選項永遠比較緩慢,因為其會複製資料,且會重新建立非叢集索引。在資料表開始分散,且您想要重新排序索引值時,最好重新組織資料。
注意事項 [資料已排序] 使用 [SORTED_DATA] 選項建立叢集索引。[重新組織已排序的資料] 使用 [SORTED_DATA_REORG] 選項建立叢集索引。如果您選擇任何一個選項時,有任一資料列檢查失敗,則在您儲存資料表時將無法建立索引。在類似的失敗事件中,您可以修正資料或選擇 [排序資料] 選項。
最後,按一下 [關閉]。