Microsoft 發佈 Microsoft SQL Server 2005 或 Microsoft SQL Server 2008 修正成一個可下載的檔案。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 Microsoft SQL Server 2005 或 Microsoft SQL Server 2008 修正版本中包含的所有修復程式及所有安全性修正程式
徵狀
請試想下列案例:
-
您在電腦上安裝 Microsoft SQL Server 2005 或 SQL 2008 的實例。
-
您建立包含未對齊之非叢集索引的分區資料表。
-
您可以執行 ALTER PARTITION 函數 語句來分割或合併分區資料表的分區範圍。
在這種情況下,您會定期收到下列錯誤訊息:
Msg 2601、Level 14、State 1、Line 1Cannot 在 object <objectname> 中插入重複的鍵列,並 <uniqueindexname>的唯一索引。
原因
發生這個問題的原因是,在分割分區範圍時,在查詢優化程式中觸發了錯誤。 當執行時間方案刪除受影響分區範圍中的某些資料列並將其插入新的分區範圍時,會發生唯一的金鑰違規情況。
解決方案
累積更新資訊
SQL Server 2005 Service Pack 3
此問題的修正程式會在 SQL Server 2005 Service Pack 3 的累積更新15中第一次發行。如需此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2507766 SQL Server 2005 的累積更新套件 15 Service Pack 3注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2005 修正版本中所包含的所有修復程式及所有安全性修正程式。 Microsoft 建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
960598 在發行 SQL Server 2005 Service Pack 3 之後發行的 SQL Server 2005 組建 Microsoft SQL Server 2005 修復程式是針對特定的 SQL Server service pack 建立的。 您必須將 SQL Server 2005 Service Pack 3 修復程式套用至 SQL Server 2005 Service Pack 3 的安裝。 根據預設,SQL Server service pack 中提供的任何熱修復程式都包含在下一個 SQL Server service pack 中。
SQL Server 2005 Service Pack 4
此問題的修正程式是在 SQL Server 2005 的累積更新2(Service Pack 4)中第一次發行。如需此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2489409 SQL Server 2005 的累積更新套件 2 Service Pack 4注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2005 修正版本中所包含的所有修復程式及所有安全性修正程式。 Microsoft 建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2485757 在發行 SQL Server 2005 Service Pack 4 之後發行的 SQL Server 2005 組建 Microsoft SQL Server 2005 修復程式是針對特定的 SQL Server service pack 建立的。 您必須將 SQL Server 2005 Service Pack 4 修復程式套用至 SQL Server 2005 Service Pack 4 的安裝。 根據預設,SQL Server service pack 中提供的任何熱修復程式都包含在下一個 SQL Server service pack 中。
SQL Server 2008 Service Pack 1
此問題的修正程式是在 SQL Server 2008 Service Pack 1 的累積式更新13中第一次發行。如需此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2497673 SQL Server 2008 Service Pack 1 的累積更新套件13注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 修正版本中所包含的所有修復程式及所有安全性修正程式。 Microsoft 建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
970365 在發行 SQL Server 2008 Service Pack 1 之後發行的 SQL Server 2008 組建 Microsoft SQL Server 2008 修復程式是針對特定的 SQL Server service pack 建立的。 您必須將 SQL Server 2008 Service Pack 1 修補程式套用至 SQL Server 2008 Service Pack 1 的安裝。 根據預設,SQL Server service pack 中提供的任何熱修復程式都包含在下一個 SQL Server service pack 中。
SQL Server 2008 Service Pack 2
此問題的修正程式是在 SQL Server 2008 的累積更新3(Service Pack 2)中第一次發行。如需此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2498535 SQL Server 2008 的累積更新套件 3 Service Pack 2注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 修正版本中所包含的所有修復程式及所有安全性修正程式。 Microsoft 建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2402659 在發行 SQL Server 2008 Service Pack 2 之後發行的 SQL Server 2008 組建 Microsoft SQL Server 2008 修復程式是針對特定的 SQL Server service pack 建立的。 您必須將 SQL Server 2008 Service Pack 2 修補程式套用至 SQL Server 2008 Service Pack 2 的安裝。 根據預設,SQL Server service pack 中提供的任何熱修復程式都包含在下一個 SQL Server service pack 中。
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。
參考
如需 Transact-sql ALTER PARTITION 函數 語句的詳細資訊,請造訪下列 MSDN 網站:
Transact-sql ALTER PARTITION 函數語句的一般資訊如需有關劃分索引之特殊準則的詳細資訊,請造訪下列 MSDN 網站:
劃分索引的特殊指導方針如需有關 SQL Server 的增量服務模型的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
935897 您可以從 SQL Server 團隊取得增量服務模型,以提供已報告問題的修補程式如需 SQL Server 更新命名架構的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
822499Microsoft SQL Server 軟體更新套件的新命名架構如需軟體更新術語的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
824684 描述 Microsoft 軟體更新所使用的標準術語說明