Udostępnij za pomocą


Błąd podczas dołączania bazy danych z włączoną funkcją przechwytywania zmian danych (CDC) do instancji programu SQL Server 2016 lub nowszej wersji w systemie Windows.

Ten artykuł pomaga rozwiązać problem polegający na tym, że nie można dołączyć bazy danych z włączoną usługą CDC do wystąpienia programu SQL Server 2016 lub nowszej wersji programu SQL Server na systemie Windows.

Oryginalna wersja produktu: SQL Server
Oryginalny numer KB: 3200464

Symptomy

Odłączasz bazę danych z włączoną opcją Change Data Capture na SQL Server 2014 lub wcześniejszej wersji i dołączasz ją do SQL Server 2016 lub nowszej wersji na instancji systemu Windows. W takiej sytuacji podczas uruchamiania procedury systemowej sp_cdc_enable_table wystąpi następujący błąd:

Polecenie

EXEC sys.sp_cdc_enable_table @source_schema='<schema name>',
@source_name='<source name>', @role_name='<role name>',  
@supports_net_changes=1, @allow_partition_switch=0;

Komunikat o błędzie

Msg 22832, poziom 16, stan 1, procedura
sp_cdc_enable_table_internal, wiersz 639 [Wiersz początkowy partii 0]
Nie można zaktualizować metadanych wskazujących tabelę [<nazwa> schematu]. Opcja [<nazwa> obiektu] jest włączona dla funkcji przechwytywania zmian danych. Wystąpił błąd podczas wykonywania polecenia "insert into [cdc]. [captured_columns]". Zwrócony błąd to 213: "Nazwa kolumny lub liczba podanych wartości nie jest zgodna z definicją tabeli". Użyj akcji i błędu, aby określić przyczynę błędu i ponownie przesłać żądanie.

Rozwiązanie

Aby rozwiązać ten problem, uruchom polecenie sp_cdc_vupgrade po dołączeniu bazy danych w wystąpieniu programu SQL Server 2016 lub nowszej wersji systemu Windows, która została włączona Change Data Capture .

Aby uzyskać więcej informacji, zobacz Dołączanie bazy danych.