主键和唯一索引有什么区别?
时间:2019-01-05 22:43 来源:未知 作者:IT
相同点:它们都属于实体完整性约束。
不同点:
(1) 唯一性约束所在的列允许空值,但是主键约束所在的列不允许空值。
(2) 可以把唯一性约束放在一个或者多个列上,这些列或列的组合必须有唯一的。但是,唯一性约束所在的列并不是表的主键列。
(3) 唯一性约束强制在指定的列上创建一个唯一性索引。在默认情况下,创建唯一性的非聚簇索引,但是,也可以指定所创建的索引是聚簇索引。
(4) 建立主键的目的是让外键来引用。
(5) 一个表最多只有一个主键,但可以有很多唯一键。 (责任编辑:IT)
相同点:它们都属于实体完整性约束。 不同点: (1) 唯一性约束所在的列允许空值,但是主键约束所在的列不允许空值。 (2) 可以把唯一性约束放在一个或者多个列上,这些列或列的组合必须有唯一的。但是,唯一性约束所在的列并不是表的主键列。 (3) 唯一性约束强制在指定的列上创建一个唯一性索引。在默认情况下,创建唯一性的非聚簇索引,但是,也可以指定所创建的索引是聚簇索引。 (4) 建立主键的目的是让外键来引用。 (5) 一个表最多只有一个主键,但可以有很多唯一键。 (责任编辑:IT) |