資料庫索引

2021-07-23 11:05:25 字數 966 閱讀 9447

資料庫索引,是資料庫管理系統中乙個排序的資料結構,以協助快速查詢、更新資料庫表中資料。索引的實現通常使用b樹及其變種b+樹。 在資料之外,資料庫系統還維護著滿足特定查詢演算法的資料結構,這些資料結構以某種方式引用(指向)資料,這樣就可以在這些資料結構上實現高階查詢演算法。這種資料結構,就是索引。

為表設定索引要付出代價的:一是增加了資料庫的儲存空間,二是在插入和修改資料時要花費較多的時間(因為索引也要隨之變動)。

建立索引可以大大提高系統的效能。

通過建立唯一性索引,可以保證資料庫表中每一行資料的唯一性。

可以大大加快資料的檢索速度,這也是建立索引的最主要的原因。

可以加速表和表之間的連線,特別是在實現資料的參考完整性方面特別有意義。

在使用分組和排序 子句進行資料檢索時,同樣可以顯著減少查詢中分組和排序的時間。

通過使用索引,可以在查詢的過程中,使用優化隱藏器,提高系統的效能。

雖然,索引有許多優點, 但是為表中的每乙個列都增加索引,是非常不明智的。這是因為,增加索引也有許多不利的乙個方面。

建立索引和維護索引要耗費時間,這種時間隨著資料 量的增加而增加。

索引需要佔物理空間,除了資料表佔資料空間之外,每乙個索引還要佔一定的物理空間,如果要建立聚簇索引,那麼需要的空間就會更大。

當對表中的資料進行增加、刪除和修改的時候,索引也要動態的維護,這樣就降低了資料的維護速度。

索引是建立在資料庫表中的某些列的上面。在建立索引的時候,應該考慮在哪些列上可以建立索引,在哪些列上不能建立索引。

一般來說,應該在這些列上建立索引:

一般來說,不應該建立索引的的這些列具有下列特點:

根據資料庫的功能,可以在資料庫設計器中建立三種索引:唯一索引、主鍵索引和聚集索引。

索引的特徵

索引有兩個特徵,即唯一性索引和復合索引。

資料庫 資料庫索引

索引是儲存引擎用於快速找到記錄的一種資料結構。索引以檔案的形式儲存在磁碟中。索引可以包含乙個或多個列的值。儲存引擎查詢資料的時候,先在索引中找對應值,然後根據匹配的索引記錄找到對應的資料行。1.b tree索引 2.雜湊索引 myisam和innodb儲存引擎 只支援btree索引,也就是說預設使用...

資料庫mysql索引 資料庫 mysql索引

mysql 索引 mysql索引的建立對於mysql的高效執行是很重要的,索引可以大大提高mysql的檢索速度。打個比方,如果合理的設計且使用索引的mysql是一輛蘭博基尼的話,那麼沒有設計和使用索引的mysql就是乙個人力三輪車。索引分單列索引和組合索引。單列索引,即乙個索引只包含單個列,乙個表可...

資料庫索引

索引 索引列唯一索引 主鍵索引 聚簇索引和非聚簇索引 如何建立索引 如何刪除索引 使用索引可快速訪問資料庫表中的特定資訊。索引是對資料庫表中一列或多列的值進行排序的一種結構,例如 employee 表的姓 lname 列。如果要按姓查詢特定職員,與必須搜尋表中的所有行相比,索引會幫助您更快地獲得該資...