首頁 > 資料庫 > mysql教程 > 我們如何對現有 MySQL 表的欄位應用 UNIQUE 約束?

我們如何對現有 MySQL 表的欄位應用 UNIQUE 約束?

PHPz
發布: 2023-09-16 21:05:02
轉載
1191 人瀏覽過

我们如何对现有 MySQL 表的字段应用 UNIQUE 约束?

我們可以使用 ALTER TABLE 語句將 UNIQUE 約束套用到現有 MySQL 表的欄位。

語法

ALTER TABLE table_name MODIFY colum_name datatype UNIQUE;
                    OR
ALTER TABLE table_name ADD UNIQUE (colum_name);
登入後複製

範例

假設我們有一個名為「Test4」的表,並且我們想要在「Name」欄位中新增UNIQUE 約束,那麼可以藉助ALTER TABLE 指令來完成如下-

mysql> DESCRIBE test4;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    | int(11)     | YES  | UNI | NULL    |       |
| Name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.04 sec)

mysql> ALTER TABLE test4 MODIFY Name Varchar(20) UNIQUE;
Query OK, 0 rows affected (0.22 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> DESCRIBE test4;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    | int(11)     | YES  | UNI | NULL    |       |
| Name  | varchar(20) | YES  | UNI | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.04 sec)
登入後複製

從上面的結果集中可以看出,MySQL對欄位「Name」加入了UNIQUE約束。我們也可以使用以下查詢新增 UNIQUE 限制 -

mysql> Alter table test4 add UNIQUE(name);
Query OK, 0 rows affected (0.16 sec)
Records: 0 Duplicates: 0 Warnings: 0
登入後複製

以上是我們如何對現有 MySQL 表的欄位應用 UNIQUE 約束?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板