1. 程式人生 > >MySQL使用自增欄位需要注意的事項(Day06)

MySQL使用自增欄位需要注意的事項(Day06)

原文為博主原創,整理筆記實屬不易,如若轉載,請註明出處

在系統開發中,我們經常要用到唯一編號,使用過MySQL的人都知道,MySQL有一個定義列為自增的屬性,叫做auto_increment,在這裡需要注意的是,anto_increment用來為設定自動編號,每一表只能有一個auto_increment列,使用auto_increment屬性的欄位,必須被索引。

1.使用auto_increment來建立自增屬性時,該欄位必須被指定索引,否則,建立資料表時會     出現錯誤  

index(id)就是我新增的一個普通索引,index是索引名,如果我們在使用auto_incremetn時,沒有給使用auto_incremetn的欄位建立索引,建立資料表就會報錯。如下圖

2.有一種特殊的情況我們需要搞清楚:

有時候建立資料表時,auto_increment與主鍵約束(primary key)在同一個欄位中使用,這個時候即使不指定索引,資料庫也不會報錯,這是因為在定義主鍵約束 結束後,MySQL會自動為主鍵建立一個唯一索引,索引名為primary,這就是為什麼當我們把auto_increment與primary key(主鍵約束)一起使用時,不需要再給該欄位建立索引,也能成功建立資料表的原因了.

如下圖所示:

但是:如果使用auto_increment設定自增欄位,沒有與主鍵約束一同使用,則使用auto_increment的欄位必須新增索引,否則建立資料表會出錯,在上面演示過了。