如何讓 MySQL 中現有的欄位變為唯一?


在 MySQL 中 Unique 指我們無法新增重複記錄。現在我們來看看如何為正在建立的表的列建立唯一約束。

mysql> create table UniqueConstDemo
- > (
- > name varchar(100) unique
- > );
Query OK, 0 rows affected (0.72 sec)

現在,我們不能多次對“name”列擁有相同的值。

插入一些具有重複值以檢查錯誤的記錄。

mysql> insert into UniqueConstDemo values('John');
Query OK, 1 row affected (0.19 sec)

mysql> insert into UniqueConstDemo values('John');

執行上述查詢後,會看到以下錯誤。

mysql> insert into UniqueConstDemo values('John');
ERROR 1062 (23000): Duplicate entry 'John' for key 'name'

插入不同的值不會出錯。

mysql> insert into UniqueConstDemo values('Bob');
Query OK, 1 row affected (0.11 sec)

現在,讓我們使用 SELECT 語句顯示所有記錄。

mysql> select *from UniqueConstDemo;

以下是輸出。

+-------+
| name  |
+-------+
| Bob   |
| John  |
+-------+
3 rows in set (0.00 sec)

更新時間: 26-06-2020

177 次瀏覽

提升你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.