唯一约束
唯一约束确保一组列中的值对于表中的所有行都是唯一的,且不为空。 在唯一约束中指定的列必须定义为 NOT NULL。 数据库管理器使用唯一索引在对唯一约束的各列进行更改时强制键的唯一性。
可在 CREATE TABLE 或 ALTER TABLE 语句中使用 UNIQUE 子句定义唯一约束。 例如,DEPARTMENT 表中的典型唯一约束可以是:部门号是唯一的,且不为空。
图 1 显示存在表的唯一约束时,阻止将重复记录添加到表中:图 1。 唯一约束防止出现重复数据

数据库管理器在插入和更新操作期间强制执行此约束,以确保数据完整性。
表可以有任意数目的唯一约束,最多将一个唯一约束定义为主键。 对于同一组列,表不能有多个唯一约束。
引用约束的外键引用的唯一约束称为父键。
当在 CREATE TABLE 语句中定义唯一约束时,唯一索引是由数据库管理器自动创建的,且被指定为主索引或系统所需的唯一索引。
当在 ALTER TABLE 语句中定义唯一约束且同一组列存在索引时,该索引被指定为唯一的且是系统所需的。 如果这样的索引不存在,数据库管理器会自动创建唯一索引,并将其指定为主索引或系统所需的唯一索引。
注: 定义唯一约束与创建唯一索引之间存在区别。 尽管都强制唯一性,但唯一索引允许可空列,且通常不能用作父键。