Microsoft 發佈 Microsoft SQL Server 2008 R2 Service Pack 1 (SP1)或 Microsoft SQL Server 2012 (以一個可下載的檔案修正)。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2008 R2 Service Pack 1 (SP1)或 Microsoft SQL Server 2012 更新版本中所包含的所有熱修復程式及所有安全性更新。

徵狀

當您在 Microsoft SQL Server 2008 R2 中執行包含公用語言執行時間(CLR)使用者定義匯總(UDA)函數的並行查詢時,可能會發生 NullReferenceException 例外狀況或 InvalidOperationException 例外狀況。 此外,您收到下列錯誤訊息:

Msg 6522、Level 16、State 2、Line 1A 在執行使用者定義的常式或匯總「<使用者定義的常式或匯總名稱>」期間發生 .NET Framework 錯誤: NullReferenceException: Object reference 未設定為物件的實例。

解決方案

累積更新資訊

SQL Server 2012

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

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

2692828 在發行 SQL Server 2012 之後發行的 SQL Server 2012 組建 您必須將 SQL Server 2012 修補程式套用至 SQL Server 2012 的安裝。

SQL Server 2008 R2 SP1 的累積更新套件5

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

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

2567616 在發行 SQL Server 2008 R2 SP1 之後發行的 SQL Server 2008 R2 組建

因應措施

若要解決此問題,請不要執行使用並存執行方案的查詢。 例如,您可以在伺服器設定中將 最大並行度 選項設定為 1 ,或將 MAXDOP 查詢提示選項設定為 1。

其他相關資訊

如需有關 CLR UDA 的詳細資訊,請造訪下列 MSDN 網站:

有關 CLR UDA 的一般資訊

狀態

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×