徵狀
假設您的資料庫已在 Microsoft SQL Server 2014 中設定選項READ_COMMITTED_SNAPSHOT ,且已啟用讀取已提交快照隔離(RCSI)。 當您在使用者事務內容以外的同一條語句中存取記憶體優化資料表和記憶體優化資料表變數時,該作業可能失敗。 此外,您可能會收到下列錯誤:
Msg 41359。 在資料庫選項 READ_COMMITTED_SNAPSHOT 設定為 [開啟] 時,使用 [已確認認可] 隔離層級存取記憶體優化資料表的查詢,就無法存取以磁片為基礎的資料表。 使用資料表提示(例如 WITH (快照))為記憶體優化資料表提供支援的隔離層級。
解決方案
此問題最初是在 SQL Server 的後續累積更新中修正。
SQL Server 2014 的累積更新1 /en-us/help/2931693
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
因應措施
若要解決此問題,請使用下列因應措施:
-
將資料表提示與(快照)搭配使用資料表變數。
-
將 [資料庫] 選項 MEMORY_OPTIMIZED_ELE加值稅E_TO_SNAPSHOT 設定為 [開啟]。
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。