Sign in with Microsoft
Sign in or create an account.

徵狀

在 Microsoft SQL Server 2012 中,執行包含 IF EXISTS 語句的 SQL 查詢。 如果 IF EXISTS 語句包含動態管理函式 sys.dm_db_index_physical_stats,您會收到類似下列所示的存取違規:

[日期 時間spid # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *日期時間spid # *日期時間spid # * 開始堆疊轉儲:日期時間spid # * 日期時間 spid #日期時間spid # *日期時間spid # *日期時間 spid# * 例外位址 = 000007FF7DA5614B 模組(sqlmin + 000000000000614B)日期時間spid # * 例外狀況date= c0000005 EXCEPTION_ACCESS_VIOLATION日期時間 spid #* 輸入緩衝區510位元組- #日期時間spid #*SQL_query_code日期時間spid # * 結束

注意事項

  • 如果您在發生存取侵犯之後針對該資料庫執行 DBCC CHECKDB 命令,就不會報告錯誤。

  • 當您第一次執行 SQL 查詢時,不會發生存取違規。 不過,每次執行 SQL 查詢之後,就會發生存取違規。

  • 如果您啟用追蹤標誌3654,就不會發生存取違規。 不過,您可以改為在追蹤中收到下列錯誤:

    位置: sosmemdbg:2074Expression: FALSESPID: 55Process ID:16972Description: MEMOBJ_INDEXANALYSIS--檢測到 Unfreed 記憶體。Msg 3624,等級20,狀態1,行5A 系統斷言檢查失敗。 如需詳細資訊,請參閱 SQL Server 錯誤記錄。 通常,宣告失敗是由軟體錯誤或資料損毀所導致。 若要檢查資料庫是否損毀,請考慮執行 DBCC CHECKDB。 如果您同意在安裝期間將轉儲傳送至 Microsoft,則會將迷你轉儲傳送至 Microsoft。 您可以從 Microsoft 最新 Service Pack 中的 Microsoft 取得更新,或從技術支援取得 QFE。 Msg 0,階層20,狀態0,行0A 在目前命令上發生嚴重錯誤。 結果(如果有的話)應該捨棄。

解決方案

若要解決此問題,請安裝 SQL Server 2012 SP1 的累積更新 7。 這個問題首先是在這個累積更新中修正。

每個新的 SQL Server 累積更新都包含前一個累積更新中所包含的所有修復程式及所有安全性修正程式。 如需詳細資訊,請參閱 SQL Server 2012 SP1 的最新累計更新

狀態

Microsoft 已確認<適用於>一節中所列的 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!

×