根据我的理解:主键是防止列中出现重复值的约束,对于唯一约束也是如此。索引是数据库管理系统用来提高查询性能的数据结构。但是为什么phpmyadmin说主键和唯一约束是索引呢
zd287kbt1#
因为他们是。当插入新行时 UNIQUE 在某个列上定义,数据库引擎必须检查该列中已存储的值,以确定插入的值是否与已存储的值冲突。索引大大简化了这一过程。这就是为什么所有公共数据库供应商都实现了唯一的约束( UNIQUE , PRIMARY KEY 等)作为索引(或用索引备份它们)。总体思路是pks、惟一约束、索引、惟一索引、部分索引等都是相关的。它们的属性略有不同(普通索引不会在重复项上抛出错误,而唯一索引则会抛出错误)。这就是为什么您通常可以在中找到关于pks和唯一约束的信息 information_schema.indexes .
UNIQUE
PRIMARY KEY
information_schema.indexes
1条答案
按热度按时间zd287kbt1#
因为他们是。
当插入新行时
UNIQUE
在某个列上定义,数据库引擎必须检查该列中已存储的值,以确定插入的值是否与已存储的值冲突。索引大大简化了这一过程。这就是为什么所有公共数据库供应商都实现了唯一的约束(UNIQUE
,PRIMARY KEY
等)作为索引(或用索引备份它们)。总体思路是pks、惟一约束、索引、惟一索引、部分索引等都是相关的。它们的属性略有不同(普通索引不会在重复项上抛出错误,而唯一索引则会抛出错误)。这就是为什么您通常可以在中找到关于pks和唯一约束的信息
information_schema.indexes
.