MySQL中的多主键(Multiple Primary Keys)和唯一索引(Unique Index)都是用于确保数据的唯一性和完整性
-
主键(Primary Key):
- 主键是唯一标识表中每一行记录的字段。
- 每个表只能有一个主键。
- 主键字段的值不能为空(NULL)且必须唯一。
- 主键可以由一个或多个字段组成,这称为复合主键(Composite Primary Key)。
- 主键在创建表时定义,也可以在创建表后添加。
-
唯一索引(Unique Index):
- 唯一索引是一种特殊类型的索引,用于确保索引列中的值唯一。
- 一个表可以有多个唯一索引。
- 唯一索引列的值可以为空(NULL),但只能有一个空值。
- 唯一索引可以由一个或多个字段组成,这称为复合唯一索引(Composite Unique Index)。
- 唯一索引可以在创建表时定义,也可以在创建表后添加。
总结:
- 主键是用于唯一标识表中每一行记录的字段,而唯一索引是用于确保索引列中的值唯一的特殊类型的索引。
- 主键是强制性的,每个表只能有一个主键;而唯一索引是可选的,一个表可以有多个唯一索引。
- 主键要求字段值不能为空且唯一,而唯一索引允许一个空值,但只能有一个空值。