Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

徵狀

當您執行包含大型物件(LOB)資料的查詢,以載入到 Microsoft SQL Server 2008、Microsoft SQL Server 2012 或 Microsoft SQL Server 2008 R2 中的 Transact-sql 變數時,會發生資料損毀。 例如,您可以執行下列查詢,將 XML 資料從資料庫資料行複製到 XML 變數: Declare @OUTXML as XMLSELECT @OUTXML = DataXml FROM Table_1 WHERE id=1 在這種情況下, SELECT 語句會在其他執行緒嘗試更新相同的 XML 資料行時執行。 這種行為可能會造成資料損毀。 此外,當您在損毀的 XML 資料行上執行任何讀取和寫入作業時,您會收到下列其中一則錯誤訊息:

  • XML 資料類型已損毀。

  • 發生意外的檔案結束。

注意事項

  • 在並行載入作業期間通常會發生這個問題。

  • 當您使用記錄讀取器代理程式,從屬於事務性複製的發佈專案清單中的資料表讀取損毀的 XML 資料時,您會收到下列錯誤訊息:

    XML 資料類型已損毀。 (來源: MSSQLServer,錯誤號碼:6611)

原因

之所以會發生此問題,是因為 lob 資料資料行上的鎖定是在從資料庫資料行複製到 LOB 資料類型變數之前就已放開。 任何併發查詢都可以在複製程式完成時,更新相同的 LOB 資料。 因此,資料會損毀。

解決方案

累積更新資訊

SQL Server 2012 累積更新7

此問題的修正程式是在累積更新7中第一次發行。如需如何取得此 SQL Server 2012 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2823247 SQL Server 2012 的累積更新套件7注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2012 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2692828 在發行 SQL Server 2012 之後發行的 SQL Server 2012 組建

SQL Server 2008 R2 Service Pack 1 的累加更新12

此問題的修正程式是在累積更新12中第一次發行。如需有關如何取得適用于 SQL Server 2008 R2 Service Pack 1 之累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2828727 SQL Server 2008 R2 Service Pack 1 的累積更新套件12注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 Service Pack 1 修正版本中所包含的所有修復程式及所有安全修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2567616 在發行 SQL Server 2008 R2 Service Pack 1 之後發行的 SQL Server 2008 R2 組建

SQL Server 2008 累積更新 10 Service Pack 3

此問題的修正程式是在累積更新10中第一次發行。如需有關如何取得 SQL Server 2008 Service Pack 3 的累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2814783 SQL Server 2008 的累積更新套件 10 Service Pack 3注意: 因為組建是累加的,所以每個新的修正版本都包含舊版 SQL Server 2008 Service Pack 3 修復程式版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2629969 在發行 SQL Server 2008 Service Pack 3 之後發行的 SQL Server 2008 組建

SQL Server 2008 R2 Service Pack 2 (SP2)的累積更新5

此問題的修正程式是在累積更新5中第一次發行。如需有關如何取得適用于 SQL Server 2008 R2 S2008 R2 SP2 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2797460 SQL Server 2008 R2 的累積更新套件5(R2 S2008 R2 SP2)注意: 因為組建是累加的,所以每個新的修正版本都包含所有的修復程式,以及舊版 SQL Server 2008 R2 SP2 修正版本中所包含的所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2730301 在發行 SQL Server 2008 R2 Service Pack 2 之後發行的 SQL Server 2008 R2 組建

狀態

Microsoft 已確認<適用於>一節所列的 Microsoft 產品確實有上述問題。

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×