KB4018227 - 修正:在 SQL Server 中的鏡像資料庫上發生自動容錯移轉之後,預存程序可能會失敗

套用到
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Enterprise Core SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) 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 ted,方法是使用高安全模式和自動容錯移轉。

如果您修改預存程序定義,然後在自動容錯移轉之後執行預存程序,您會收到下列錯誤訊息:

注意

  • 錯誤:2801,嚴重性:16,狀態:1
  • 物件 'stored_procedure_name' 的定義自編譯以來已變更。

解決方式

此問題已在下列 SQL Server 累積更新中修正:

SQL Server 2016 RTM 的累積更新 7

SQL Server 2016 SP1 的累積更新 4

SQL Server 2014 SP2 的累積更新 6

SQL Server 2014 SP1 的累積更新 13

SQL Server 2012 Service Pack 3 的累積更新 9

建議:安裝最新的 SQL Server 累積更新

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

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

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

適用於 SQL Server 2012 SP3 的最新累積更新

狀態

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

參考資料

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