Sdílet prostřednictvím


sys.sp_cdc_help_change_data_capture (Transact-SQL)

platí pro:SQL Serverazure SQL Managed Instance

Vrátí konfiguraci zachytávání dat změn pro každou tabulku povolenou pro zachytávání dat změn v aktuální databázi. Pro každou zdrojnou tabulku lze vrátit až dva řádky, jeden řádek pro každou instanci zachycení. Zachycení změn není dostupné ve všech edicích SQL Serveru. Seznam funkcí podporovaných edicemi SQL Serveru najdete v tématu Edice a podporované funkce systému SQL Server 2022.

Transact-SQL konvence syntaxe

Syntaxe

sys.sp_cdc_help_change_data_capture
    [ [ @source_schema = ] 'source_schema' ]
    [ , [ @source_name = ] 'source_name' ]
[ ; ]

Arguments

[ @source_schema = ] 'source_schema'

Název schématu, do kterého patří zdrojová tabulka. @source_schema je sysname, s výchozím nastavením NULL. Je-li zadán @source_schema, musí být zadán také @source_name.

Pokud není null, musí @source_schema existovat v aktuální databázi.

Pokud @source_schema není null, @source_name musí být také nenulové.

[ @source_name = ] 'source_name'

Název zdrojové tabulky. @source_name je sysname s výchozím nastavením NULL. Při zadání @source_name je nutné zadat také @source_schema .

Pokud není null, @source_name musí existovat v aktuální databázi.

Pokud @source_name není null, @source_schema musí být také nenulové.

Hodnoty návratového kódu

0 (úspěch) nebo 1 (selhání).

Sada výsledků

Název sloupce Datový typ Description
source_schema sysname Název schématu zdrojové tabulky
source_table sysname Název zdrojové tabulky
capture_instance sysname Název instance zachycení.
object_id int ID tabulky změn přidružené ke zdrojové tabulce
source_object_id int ID zdrojové tabulky.
start_lsn binary(10) Pořadové číslo protokolu (LSN) představující nízký koncový bod pro dotazování tabulky změn

NULL = nízký koncový bod nebyl stanoven.
end_lsn binary(10) LSN představující vysoký koncový bod pro dotazování tabulky změn. V SQL Serveru 2012 (11.x) je tento sloupec vždy NULL.
supports_net_changes bit Je povolená podpora net change.
has_drop_pending bit Nepoužívá se v SQL Serveru 2012 (11.x).
role_name sysname Název databázové role sloužící k řízení přístupu k datům změn

NULL = role se nepoužívá.
index_name sysname Název indexu používaného k jednoznačné identifikaci řádků ve zdrojové tabulce.
filegroup_name sysname Název souborové skupiny, ve které se tabulka změn nachází.

NULL = tabulka změn je ve výchozí skupině souborů databáze.
create_date datetime Datum, kdy byla povolena instance zachycení
index_column_list nvarchar(max) Seznam sloupců indexu sloužících k jedinečné identifikaci řádků ve zdrojové tabulce
captured_column_list nvarchar(max) Seznam zachycených zdrojových sloupců

Poznámky

Pokud @source_schema i @source_name výchozí NULLnastavení nebo jsou explicitně nastaveny NULL, vrátí tato uložená procedura informace pro všechny instance zachycení databáze, ke kterým má volající přístup SELECT. Pokud @source_schema a @source_name nejsou null, vrátí se pouze informace o konkrétní pojmenované povolené tabulce.

Povolení

Pokud jsou @source_schema a @source_nameNULL, autorizaci volajícího určuje, které povolené tabulky jsou zahrnuty do sady výsledků. Volající musí mít oprávnění SELECT pro všechny zachycené sloupce instance zachycení a také členství v jakýchkoli definovaných rolích pro zahrnutí informací o tabulce.

Členové role databáze db_owner mohou zobrazit informace o všech definovaných instancích zachycení. Při vyžádání informací pro konkrétní povolenou tabulku se pro pojmenovanou tabulku použijí stejná kritéria SELECT a členství.

Examples

A. Vrácení informací o konfiguraci zachytávání dat změn pro zadanou tabulku

Následující příklad vrátí konfiguraci zachytávání dat změn pro HumanResources.Employee tabulku.

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_help_change_data_capture
    @source_schema = N'HumanResources',
    @source_name = N'Employee';
GO

B. Vrácení informací o konfiguraci zachytávání dat změn pro všechny tabulky

Následující příklad vrátí informace o konfiguraci pro všechny povolené tabulky v databázi, které obsahují data změny, ke kterým má volající oprávnění přistupovat.

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_help_change_data_capture;
GO