時間:2024-02-05 12:47作者:下載吧人氣:16
索引就是數據表中數據和相應的存儲位置的列表,利用索引可以提高在表或視圖中的查找數據的速度。
數據庫中索引主要分為兩類:聚集索引和非聚集索引。SQL Server 2005還提供了唯一索引、索引視圖、全文索引、xml索引等等。聚集索引和非聚集索引是數據庫引擎中索引的基本類型,是理解其他類型索引的基礎。
聚集索引是值表中數據行的物理存儲順序和索引的存儲順序完全相同。聚集索引根據索引順序物理地重新排列了用戶插入到表中的數據,因此,每個表只能創建一個聚集索引。聚集索引經常創建在表中經常被搜索到的列或按順序訪問的列上。在默認情況下,主鍵約束自動創建聚集索引。
非聚集索引不改變表中數據列的物理存儲位置,數據與索引分開存儲,通過索引指向的地址與表中的數據發生關系。
非聚集索引沒有改變表中物理行的位置,索引可以在以下情況下使用非聚集索引:
一、如果某個字段的數據唯一性比較高
二、如果查詢所得到的數據量比較少
聚集索引和非聚集索引的區別:
聚集索引 |
非聚集索引 |
每個表只允許創建一個聚集索引 |
最多可以有249個非聚集索引 |
物理的重排表中的數據以符合索引約束 |
創建一個鍵值列表,鍵值指向數據在數據頁中的位置 |
用于經常查找數據的列 |
用于從表中查找單個值的列 |
用于從表中查找單個值的列
除了以上索引,還有以下類型索引:
a、 唯一索引:如果希望索引鍵都不同,可以創建唯一索引。聚集索引和非聚集索引都可以是唯一索引。
b、 包含新列索引:索引列的最大數量是16個,索引列的字節總數的最高值是900。如果當多個列的字節總數大于900,切又想在這些劣種都包含索引是,可以使用包含性列索引
c、 視圖索引:提供視圖查詢效率,可以視圖的索引物理化,也就是說將結果集永久存儲在索引中,可以創建視圖索引。
d、 XML索引:是與xml數據關聯的索引形式,是XML二進制blob的已拆分持久表示形式
e、 全文索引:一種特殊類型的基于標記的功能性功能,用于幫助在字符串中搜索賦值的詞
語法
create [unique] [clustered | noclustered]
網友評論