MySQL 表的建立 表索引 索引的設計原則

2021-10-07 23:10:35 字數 696 閱讀 5968

為了使索引的使用效率更高,在建立索引時,必須考慮在哪些欄位上建立索引和建立什麼型別的索引。本節將介紹一些索引的設計原則。

唯一性索引的值是唯一的,可以更快速地通過該索引來確定某條記錄。例如,學生表中學號是具有唯一性的字段,為該字段建立唯一性索引可以很快確定某個學生的資訊,如果使用姓名的話,可能存在同名現象,從而降低查詢速度。

經常需要使用order by、group by、distinct和union等操作的字段,排序操作會浪費很多時間,如果為其建立索引,可以有效地避免排序操作。

如果某個字段經常用來做查詢條件,那麼該字段的查詢速度會影響整個表的查詢速度,為這樣的字段建立索引可以提高整個表的查詢速度。

索引的數目不是越多越好。每個索引都需要占用磁碟空間,索引越多,需要的磁碟空間就越大,修改表時,對索引的重構和更新很麻煩。

如果索引的值很長,那麼查詢的速度會受到影響。例如,對乙個char(100)型別的字段進行全文檢索需要的時間肯定要比對char(10)型別的字段需要的時間多。

如果索引的值很長,最好使用值的字首來索引。例如,text和blog型別的字段,進行全文檢索會很浪費時間,如果只檢索字段前面的若干字元,這樣可以提高檢索速度。

表中的資料被大量更新,或者資料的使用方式被改變後,原有的一些索引可能不再需要。資料庫管理員應當定期找出這些索引,將它們刪除,從而減少索引對更新操作的影響。

時間: 2020-07-10

MySQL建立表的時候建立索引

要想使用索引提高資料表的訪問速度,首先,需要建立乙個索引,建立索引的方式,有三種。這種方式最簡單 方便,語法格式 create table 表名 欄位名 資料型別 完整性約束條件 欄位名 資料型別 完整性約束條件 欄位名 資料型別 unique fulltext spatial index key ...

建立表的索引

索引是乙個列表,這個列表中包含了某個表中一列或若干列的集合以及這些值的記錄在資料表中儲存位置的實體地址。索引是依賴於表建立的,提供了資料庫中編排表中資料的內部方法。1.索引的作用 1 可以加快資料的檢索速度,這也是建立索引的最主要原因。2 通過建立唯一性索引,可以確保表中每一行資料的唯一性。3 可以...

Mysql建表 建立索引

建立表時可以直接建立索引,這種方式最簡單 方便。其基本形式如下 create table 表名 屬性名 資料型別 完整性約束條件 屬性名 資料型別 完整性約束條件 屬性名 資料型別 unique fulltext spatial index key 別名 屬性名1 長度 asc desc uniqu...