您好,登錄后才能下訂單哦!
索引提供指針以指向存儲在表中指定列的數據,然后根據指定的次序排列這些指針,在根據指針到達包含該值的行
什么是索引
數據庫中的索引和數據的目錄相似,利用目錄快速查找所需的信息。在數據庫中,索引是某個表中一列或者若干列值的集合,以及物流標識這些值的數據頁的邏輯指針清單。是SQL Server編排數據的內部方法,通過索引,可快速查找數據,而無需掃描整個表
索引頁是數據庫中存儲索引的數據頁,存放數據行的關鍵字頁以及該數據行的地址指針
索引分類
在SQL Server中,常見的索引有以下六類:
唯一索引:不允許兩行具有相同的索引值
主鍵索引:要求主鍵中每個值是唯一的
聚集索引:數據存放的物理順序與索引順序相同
非聚集索引:數據存放的物理順序與索引順序不相同
復合索引:將多個列組合而成的索引
全文索引:一種特殊類型的基于標記的功能性索引
注意:在SQL Server中,一個表只能創建一個聚集索引,但可以創建多個非聚集索引。設置某列為主鍵,該列就默認為聚集索引
創建索引
創建索引的方法有兩種:使用SSMS和T-SQL語句
(1)使用SSMS創建索引
可以展開表,選擇“新建索引”,也可以右擊表,選擇“設計”,右擊列,選擇“索引/鍵”,創建索引
(2)使用T-SQL語句創建索引
創建聚集索引語法:
create clustered index 索引名 on 表名(列名)
創建非聚集索引語法:
create [nonclustered] index 索引名 on 表名(列名)
創建唯一索引
create unique [clustered|nonclustered] index 索引名 on 表名(列名)
刪除索引
drop index 索引名 on 表名
索引的選擇原則
使用索引可加快數據檢索速度,但為每個列都建立索引沒有必要。因為索引自身也需要維護,并占用一定的資源,可以按照以下標準選擇建立索引的列
* 頻繁搜索、查詢選擇的列
* 經常排序、分組的列
* 經常用于連接的列(主鍵、外鍵)
不要使用下面的列建立索引,因為索引所花的時間比在表中逐行搜索的時間更長
* 僅包含幾個值的列
* 表中僅包含幾行
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。