索引用於快速找出在某個欄位中有一特定值的行,不使用索引,MySQL必須從第一筆記錄開始讀取完整個表,直到找出相關的行,表越大,查詢資料所花費的時間就越多。建立索引的操作步驟如下:
推薦教學:MySQL入門影片教學
##1、首先我們開啟一個要操作的資料表,如下圖所示,我們需要為name欄位新增索引。 2、接下來我們就可以透過create index來加入索引了,如下圖所示,on後面的內容別丟掉了。 3、然後我們展開表格下面的索引資料夾,就可以看到建立的索引了。 4、接下來我們在建立索引的時候還可以在欄位後面加入排序方式。 5、然後刪除索引的時候用的是drop語句,如下圖所示,和刪除表類似。 6、最後執行drop語句以後,在索引資料夾下面就沒有索引了。擴充資料
#索引是為了加速資料列中資料行的擷取而創建的一種分散的儲存結構。索引是針對表而建立的,它是由資料頁面以外的索引頁面組成的,每個索引頁面中的行都會含有邏輯指針,以便加速檢索物理資料。 [2]
在資料庫關係圖中,可以在選取表的「索引/鍵」屬性頁中建立、編輯或刪除每個索引類型。當保存索引所附加到的表,或儲存該表所在的關係圖時,索引將保存在資料庫中。 在關聯式資料庫中,索引是一種單獨的、物理的對資料庫表中一列或多列的值進行排序的一種儲存結構,它是某個表中一列或若干列值的集合和對應的指向表中物理標識這些值的資料頁的邏輯指標清單。索引的作用相當於圖書的目錄,可以依照目錄中的頁碼快速找到所需的內容。 索引提供指向儲存在資料表的指定列中的資料值的指針,然後根據您指定的排序順序對這些指針排序。資料庫使用索引以找到特定值,然後順指標找到包含該值的行。這樣可以使對應於表的SQL語句執行得更快,可快速存取資料庫表中的特定資訊。 當表中有大量記錄時,若要對錶進行查詢,第一種搜索信息方式是全表搜索,是將所有記錄一一取出,和查詢條件進行一一對比,然後返回滿足條件的記錄,這樣做會消耗大量資料庫系統時間,並造成大量磁碟I/O操作;第二種就是在表中建立索引,然後在索引中找到符合查詢條件的索引值,最後透過儲存在索引中的ROWID(相當於頁碼)快速找到表中對應的記錄。優點
1.大幅加快資料的擷取速度; 2.建立唯一性索引,保證資料庫表中每一行資料的唯一性; 3.加速表和表之間的連接; 4.在使用分組和排序子句進行資料檢索時,可以顯著減少查詢中分組和排序的時間。缺點
1.索引需要佔實體空間。 2.當資料表中的資料增加、刪除和修改的時候,索引也要動態的維護,降低了資料的維護速度。以上是資料庫怎麼建立索引的詳細內容。更多資訊請關注PHP中文網其他相關文章!