症状
假设你有一个分区表,其中包含一个计算分区列,该列被标记为在 Microsoft SQL Server 2014 或2016中 保留 ,然后在联机时重新生成分区。 在这种情况下,你会收到以下错误消息:
消息4819、级别16、状态1、行LineNumber 无法进行大容量加载。 大容量数据流被错误地指定为已排序,或者数据违反了由目标表强加的唯一性约束。 以下两行的排序顺序:第一行的主键:(rownumber、datetime)、第二行的主键:(rownumber、 datetime)。 语句已终止。
解决方案
若要激活此修补程序,必须启用跟踪标记(TF) 176。 在 SQL Server 的以下累积更新中修复了此问题: Sql server 2016 SP1 的累积更新 7 SP1累积更新4(适用于 sql server 2016 )
SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新: SQL Server 2016 的最新累积更新
解决方法
要解决此问题,请在重建查询中使用 SORT_IN_TEMPDB = ON 。
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
了解 Microsoft 用于描述软件更新的 术语。