thk*_*ala 15

在表的相同字段上有两个单独的索引(id).其中一个暗示是设置id为a PRIMARY KEY,另一个你可能是明确创建的.只需要其中一个 - 由于额外的索引更新,两者都可能导致性能下降.

只需删除其中一个即可解决此问题.

对表的列(或字段,如果您愿意)具有PRIMARY KEYUNIQUE约束本质上意味着对于插入的每一行,该列的值应该是唯一的,因此它不应该已经存在于表中.天真的方法是在插入之前读取所有现有行,但是一旦插入了多行,这将使DB 非常慢.

为了解决这个问题,大多数(所有?)不错的数据库引擎将隐式为这些字段创建索引,以便它们可以快速检测表中是否已存在值,而无需扫描其所有行.

因此,在声明PRIMARY KEYUNIQUE不仅声明的字段上手动创建索引会减少,但由于维护索引所需的工作重复,也可能导致性能下降.