如何在帶有某些條件的 MySQL 字串變數列中使用 UNIQUE?


為此,您可以在一個或多個列上使用 UNIQUE 約束——

alter table yourTablleName add unique(yourColumnName1,yourColumnName2,...N);

我們先建立一個表——

mysql> create table DemoTable1598
   -> (
   -> EmployeeId int,
   -> EmployeeName varchar(20),
   -> EmployeeCountryName varchar(20)
   -> );
Query OK, 0 rows affected (0.52 sec)

這是在 varchar 列上實現 UNIQUE 的查詢——

mysql> alter table DemoTable1598 add unique(EmployeeName,EmployeeCountryName);
Query OK, 0 rows affected (0.55 sec)
Records: 0  Duplicates: 0  Warnings: 0

使用插入命令在表中插入一些記錄——

mysql> insert into DemoTable1598 values(101,'Adam','AUS');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable1598 values(102,'John','US');
Query OK, 1 row affected (0.64 sec)
mysql> insert into DemoTable1598 values(103,'Adam','US');
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable1598 values(104,'Adam','AUS');
ERROR 1062 (23000): Duplicate entry 'Adam-AUS' for key 'EmployeeName'

使用選擇語句在表中顯示所有記錄——

mysql> select * from DemoTable1598;

這將產生以下輸出——

+------------+--------------+---------------------+
| EmployeeId | EmployeeName | EmployeeCountryName |
+------------+--------------+---------------------+
|        101 | Adam         |                AUS  |
|        102 | John         |                US   |
|        103 | Adam         |                US   |
+------------+--------------+---------------------+
3 rows in set (0.00 sec)

更新於: 16-12-2019

181 次瀏覽

開啟你的 職業生涯

完成課程,獲得認證

開始
廣告