症状
当执行包含 "插入到 ..." 的查询时SELECT 语句在 SQL Server 2014 或2016中将值插入分区的聚集列存储索引时,发生内部查询死锁。
解决方案
在 SQL Server 的以下累积更新中修复了此问题:
SQL Server 2014 的累积更新 3 Service Pack 2 注意 安装此更新后,必须设置跟踪标记2469以启用修补程序。 若要设置跟踪标记2469,请参阅 Microsoft 开发人员网络(MSDN)网站上的 跟踪标记(transact-sql) 主题。
SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:
解决方法
若要解决此问题,请使用以下某种方法:
-
将 SELECT 语句的中间结果存储在临时表中,然后将结果插入到来自临时表的聚集列存储索引中。
-
使用 DOP = 1 运行查询。
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
了解 Microsoft 用于描述软件更新的 术语。