为了使现有字段在MySQL中唯一,我们可以使用ALTER命令并为该字段设置UNIQUE约束。让我们来看一个例子。首先,我们将创建一个表。
mysql> create table AddingUnique -> ( -> Id int, -> name varchar(100) -> );
将UNIQUE添加到现有字段的语法。
alter table yourTableName add UNIQUE(yourColumnName);
应用上述语法以便将UNIQUE添加到“名称”列中。
mysql> alter table AddingUnique add UNIQUE(name); Records: 0 Duplicates: 0 Warnings: 0
现在,由于将字段设置为唯一,因此我们无法将重复的记录插入表中。如果我们尝试添加重复记录,则会引发错误。
mysql> alter table AddingUnique add UNIQUE(name); Records: 0 Duplicates: 0 Warnings: 0 mysql> insert into AddingUnique values(1,'John'); mysql> insert into AddingUnique values(1,'John'); ERROR 1062 (23000): Duplicate entry 'John' for key 'name' mysql> insert into AddingUnique values(2,'Carol'); mysql> insert into AddingUnique values(3,'John'); ERROR 1062 (23000): Duplicate entry 'John' for key 'name' mysql> insert into AddingUnique values(4,'Smith');
显示所有记录。
mysql> select *from AddingUnique;
以下是输出。
+------+-------+ | Id | name | +------+-------+ | 1 | John | | 2 | Carol | | 4 | Smith | +------+-------+ 3 rows in set (0.00 sec)