为什么phpMyAdmin认为主键和UNIQUE约束是索引?

时间:2018-11-26 13:29:08

标签: mysql phpmyadmin

根据我的理解:

  • 主键是一种约束,可防止在其中重复值 一列,对于UNIQUE约束同样如此。
  • 索引是一种数据结构,DBMS使用该数据结构来加快索引速度。 查询性能。

但是phpMyAdmin为什么说主键和UNIQUE约束是索引?:

enter image description here

1 个答案:

答案 0 :(得分:0)

因为是。

当您插入新行并且在某列上定义了UNIQUE时,数据库引擎必须浏览该列中已经存储的值,以确定插入的值是否与已存储的值发生冲突。使用索引可以大大简化该过程。这就是为什么所有常见的数据库供应商都将唯一约束(UNIQUEPRIMARY KEY等)用作索引(或用索引备份)的原因。

通常的想法是PK,唯一约束,索引,唯一索引,部分索引等都是相关的。它们的属性略有不同(普通索引不会在重复项上引发错误,而唯一索引会产生错误)。这就是为什么您通常在information_schema.indexes中找到有关PK和唯一约束的信息。