首页 > 解决方案 > 唯一列约束是否会影响 SQL Server 中 INSERT 操作的性能

问题描述

我想知道是否有一个 UNIQUE 列约束会减慢表上插入操作的性能。

标签: sqlsql-serverentity-framework

解决方案


我会说,是的。由于一般规则适用:更多索引 - 更慢的插入,因此在有和没有这种约束的情况下插入 HEAP 之间的区别将是可见的。如果可以插入一行或者这样的值(或组合)已经存在,还必须检查唯一索引,所以加倍工作。

在大量行的批量插入上,减速会更加明显。反之亦然,对单点刀片的影响会更小。

唯一约束和索引有助于查询优化器构建更好的 SELECT 计划的另一件事......


推荐阅读