mysql主鍵不需要建立索引,主鍵具備索引的功能;當建立或設定主鍵的時候,mysql會自動新增一個與主鍵對應的唯一索引,不需要再做額外的新增。資料庫管理系統對於主鍵會自動產生唯一索引,所以主鍵是一個特殊的索引。
當你建立或設定主鍵的時候,mysql會自動加入一個與主鍵對應的唯一索引,不需要再做額外的新增。
如果查詢的條件中沒有用到主鍵,可以將你的查詢欄位設定為索引。如果你想在主鍵上設定索引的話,主鍵就有索引的功能。
如下圖在mysql中建立的一張表,可以看到CREATE TABLE語句中只設定了主鍵PRIMARY KEY,並沒有建立索引的語句,但索引資訊處顯示了唯一主鍵索引,這是由mysql自己建立的。
資料庫主鍵和索引的區別與聯繫
1、主鍵是一定是唯一性索引,但唯一性索引不一定是主鍵。
主鍵就是能夠唯一標識表中某一行的屬性或是屬性組,一個表只能有一個主鍵,但可以有多個候選索引。因為主鍵可以唯一標識一行記錄,所以可以確保執行資料更新、刪除的時候不會出現錯誤的。主鍵也經常和外鍵構成參照完整性約束,防止資料不一致出現。資料庫管理系統對於主鍵自動產生唯一索引,所以主鍵也是一個特殊的索引。
2、唯一索引標識索引值唯一,一個表可以有多個唯一索引,但主鍵只能有一個。
3、主鍵列不能為空,但唯一索引列可以為空。
4、一張表格只能有一個主鍵,但可以有多個索引。
通俗舉例來說:主鍵相當於一本書的頁碼,索引相當於書的目錄。
以上是mysql主鍵還需要建立索引嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!