说明
1、指定某列或者某几列的组合数据不能重复,即单列唯一和多列联合唯一。
2、唯一约束可以保证记录的唯一性。
3、唯一约束的字段可以为空值。
4、每张数据表可以存在多个唯一约束。
实例
-- 单列唯一,id列插入重复的数据就会报错 mysql> create table t(id int unique, name varchar(4)); Query OK, 0 rows affected (0.10 sec) mysql> insert into t values(1, 'python'),(2, 'java'); Query OK, 2 rows affected, 1 warning (0.01 sec) Records: 2 Duplicates: 0 Warnings: 1 mysql> insert into t values(1, 'python'),(2, 'java'); ERROR 1062 (23000): Duplicate entry '1' for key 'id' -- 联合唯一,比如ip和port单个都可以重复,但是加起来必须是唯一的 mysql> create table t(id int unique, ip varchar(12), port varchar(4), unique(ip, port)); Query OK, 0 rows affected (0.01 sec) mysql> insert into t values(1,'127.0.0.1',8080); Query OK, 1 row affected (0.00 sec) mysql> insert into t values(2,'127.0.0.1',8081); Query OK, 1 row affected (0.00 sec) mysql> insert into t values(3,'127.0.0.2',8080); Query OK, 1 row affected (0.00 sec) mysql> insert into t values(4,'127.0.0.1',8080); ERROR 1062 (23000): Duplicate entry '127.0.0.1-8080' for key 'ip'
以上就是mysql约束条件unique的介绍,希望对大家有所帮助。更多mysql学习指路:
推荐操作系统:windows7系统、mysql5.8、DELL G3电脑