MySQL PRIMARY KEY 與 UNIQUE 約束有何區別?
下表將總結出 PRIMARY KEY 和 UNIQUE 約束的區別 −
PRIMARY KEY | UNIQUE 約束 |
---|---|
1. 一張表上只能建立一個主鍵。 | 1. 可以向一張表新增多個 UNIQUE 約束。 |
2. 預設情況下,主鍵建立聚集索引。 | 2. 預設情況下,UNIQUE 約束建立非聚集索引。 |
3. 我們不能向定義為 PRIMARY KEY 的列中插入空值。 | 3. 我們可以在具有 UNIQUE 約束的列中插入空值。 |
廣告
下表將總結出 PRIMARY KEY 和 UNIQUE 約束的區別 −
PRIMARY KEY | UNIQUE 約束 |
---|---|
1. 一張表上只能建立一個主鍵。 | 1. 可以向一張表新增多個 UNIQUE 約束。 |
2. 預設情況下,主鍵建立聚集索引。 | 2. 預設情況下,UNIQUE 約束建立非聚集索引。 |
3. 我們不能向定義為 PRIMARY KEY 的列中插入空值。 | 3. 我們可以在具有 UNIQUE 約束的列中插入空值。 |