Sql-Server

為什麼在具有 CCI 的表上啟用 CDC 時出現錯誤 35353?

  • October 16, 2020

我正在嘗試在 SQL Server Standard 2019 中對具有聚集列儲存索引、唯一非聚集索引和非唯一非聚集索引的表啟用更改數據擷取。命令失敗並出現以下錯誤:

Msg 35353, Level 16, State 1, Procedure sys.sp_cdc_enable_table_internal, 
Line 243 [Batch Start Line 16]
Change Data Capture cannot be enabled on a table with a clustered columnstore index. 
Consider dropping clustered columnstore index 

我不明白為什麼會出現此錯誤,因為據我從 Microsoft 文件中可以看出,CCI 支持 CDC。

有沒有其他人遇到過這個錯誤或知道它為什麼會發生?

我剛收到微軟的回复。CCI 和 CDC 的文件不正確/具有誤導性。聚集列儲存索引不支持更改數據擷取。從 SQL Server 2016 開始,非聚集列儲存索引支持它。他們正在更正文件。

此限制的解決方法發佈在 SO 上

  1. 如果存在,則刪除聚集列儲存索引。
  2. 啟用 CDC。
  3. 創建聚集列儲存索引。

瞧!有用!

引用自:https://dba.stackexchange.com/questions/276550