KB3213683 - 修正:無法針對包含 SQL Server 2014 或 2016 計算磁碟分割資料行的資料表線上重建磁碟分割

套用到
SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

症狀

假設您有一個分割的資料表,其中包含在 Microsoft SQL Server 2014 或 2016 中標示為 PERSISTED 的計算磁碟分割資料行,然後您可以在線上重建磁碟分割。 在此情況下,您會收到下列錯誤訊息:

注意

Msg 4819, Level 16, State 1, Line Number, Msg 4819, Level 16, State 1, Line Number, Msg 4819, Level 16, State 1, Line LineNumber

無法大量載入。 大量資料串流被錯誤地指定為已排序,或資料違反目標資料表所施加的唯一性限制式。 下列兩列的排序順序不正確:第一列的主索引鍵: (RowNumber,DateTime) ,第二列的主索引鍵: (RowNumber,DateTime) 。

該聲明已終止。

解決方式

若要啟用此 Hotfix,您必須啟用 TF) 176 (追蹤旗標。 此問題已在下列 SQL Server 累積更新中修正:

SQL Server 2016 SP1 的累積更新 7

SQL Server 2016 累積更新 4

SQL Server 2014 SP2 的累積更新 6

關於 SQL Server 的累積更新

SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:

適用於 SQL Server 2016 的最新累積更新

適用於 SQL Server 2014 的最新累積更新

因應措施

若要解決此問題,請在重建查詢中使用 SORT_IN_TEMPDB=ON。

狀態

Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。

參考資料

了解 Microsoft 用來說明軟體更新的術語。