在mysql中,可以通過使用ALTER table語句給字段添加唯一約束(Unique Key)來讓字段值唯一,語法為“ALTER TABLE 數據表名 ADD CONSTRAINT 唯一約束名 UNIQUE(字段名);”。ALTER TABLE語句用于修改原有表的結構;而唯一約束可以確保字段的唯一性,讓所有記錄中字段的值不能重復出現。
本教程操作環境:windows7系統、mysql8版本、Dell G3電腦。
在mysql中,想要讓字段唯一,可以通過給字段添加唯一約束來實現。
唯一約束(Unique Key)是指所有記錄中字段的值不能重復出現,可以確保字段的唯一性。例如,為 id 字段加上唯一性約束后,每條記錄的 id 值都是唯一的,不能出現重復的情況。如果其中一條記錄的 id 值為‘0001’,那么該表中就不能出現另一條記錄的 id 值也為‘0001’。
而給字段添加唯一約束有兩種語句:
-
CREATE TABLE?語句
-
?ALTER TABLE 語句
但CREATE TABLE?語句是在創建表時設置,不符合要求;因此這里使用 ALTER TABLE 語句。語法:
ALTER?TABLE?數據表名?ADD?CONSTRAINT?唯一約束名?UNIQUE(字段名);
示例:數據表 tb_dept中name字段修改為唯一
先看看表結構:
DESC?tb_dept;
指定部門的名稱唯一
ALTER?TABLE?tb_dept?ADD?CONSTRAINT?unique_name?UNIQUE(name);
ok,設置完成。再看看表結構:
說明:
唯一約束與主鍵約束相似的是它們都可以確保列的唯一性。不同的是,唯一約束在一個表中可有多個,并且設置唯一約束的列允許有空值,但是只能有一個空值。而主鍵約束在一個表中只能有一個,且不允許有空值。比如,在用戶信息表中,為了避免表中用戶名重名,可以把用戶名設置為唯一約束。
【相關推薦:mysql視頻教程】