Share via


sys.sp_cdc_help_change_data_capture (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL Managed Instance

Retourneert de configuratie voor het vastleggen van wijzigingengegevens voor elke tabel die is ingeschakeld voor het vastleggen van wijzigingsgegevens in de huidige database. Er kunnen maximaal twee rijen worden geretourneerd voor elke brontabel, één rij voor elk exemplaar van het vastleggen. Change Data capture is niet beschikbaar in elke editie van SQL Server. Zie -edities en ondersteunde functies van SQL Server 2022voor een lijst met functies die worden ondersteund door de edities van SQL Server.

Transact-SQL syntaxis-conventies

Syntaxis

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

Arguments

[ @source_schema = ] 'source_schema'

De naam van het schema waartoe de brontabel behoort. @source_schema is sysname, met een standaardwaarde van NULL. Wanneer @source_schema is opgegeven, moet @source_name ook worden opgegeven.

Als @source_schema niet null is, moet deze aanwezig zijn in de huidige database.

Als @source_schema niet null is, moet @source_name ook niet null zijn.

[ @source_name = ] 'source_name'

De naam van de brontabel. @source_name is sysname, met een standaardwaarde van NULL. Wanneer @source_name is opgegeven, moet @source_schema ook worden opgegeven.

Als @source_name niet null is, moet deze aanwezig zijn in de huidige database.

Als @source_name niet null is, moet @source_schema ook niet null zijn.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Resultaatset

Kolomnaam Gegevenstype Description
source_schema sysname Naam van het brontabelschema.
source_table sysname Naam van de brontabel.
capture_instance sysname Naam van het capture-exemplaar.
object_id int Id van de wijzigingstabel die is gekoppeld aan de brontabel.
source_object_id int Id van de brontabel.
start_lsn binary(10) Logboekreeksnummer (LSN) dat het lage eindpunt vertegenwoordigt voor het uitvoeren van query's op de wijzigingstabel.

NULL = het lage eindpunt is niet vastgesteld.
end_lsn binary(10) LSN vertegenwoordigt het hoge eindpunt voor het uitvoeren van query's op de wijzigingstabel. In SQL Server 2012 (11.x) is deze kolom altijd NULL.
supports_net_changes bit Ondersteuning voor nettowijziging is ingeschakeld.
has_drop_pending bit Niet gebruikt in SQL Server 2012 (11.x).
role_name sysname Naam van de databaserol die wordt gebruikt om de toegang tot de wijzigingsgegevens te beheren.

NULL = een rol wordt niet gebruikt.
index_name sysname Naam van de index die wordt gebruikt om rijen in de brontabel uniek te identificeren.
filegroup_name sysname Naam van de bestandsgroep waarin de wijzigingstabel zich bevindt.

NULL = wijzigingstabel bevindt zich in de standaard bestandsgroep van de database.
create_date datetime Datum waarop het capture-exemplaar is ingeschakeld.
index_column_list nvarchar(max) Lijst met indexkolommen die worden gebruikt om rijen in de brontabel uniek te identificeren.
captured_column_list nvarchar(max) Lijst met vastgelegde bronkolommen.

Opmerkingen

Wanneer zowel @source_schema als@source_name standaard NULLingesteld of expliciet zijn ingesteld NULL, retourneert deze opgeslagen procedure informatie voor alle exemplaren van databaseopnamen waartoe de aanroeper SELECT-toegang heeft. Wanneer @source_schema en @source_name niet null zijn, wordt alleen informatie over de specifieke tabel met de naam ingeschakeld geretourneerd.

Permissions

Wanneer @source_schema en @source_name zijn NULL, bepaalt de autorisatie van de beller welke ingeschakelde tabellen zijn opgenomen in de resultatenset. Bellers moeten een SELECT-machtiging hebben voor alle vastgelegde kolommen van het opname-exemplaar en ook lidmaatschap van gedefinieerde gatingsrollen voor de tabelgegevens die moeten worden opgenomen.

Leden van de db_owner-databaserol kunnen informatie bekijken over alle gedefinieerde capture-exemplaren. Wanneer informatie voor een specifieke ingeschakelde tabel wordt aangevraagd, worden dezelfde SELECT- en lidmaatschapscriteria toegepast voor de benoemde tabel.

Voorbeelden

Eén. Configuratiegegevens voor wijzigingsgegevens voor een opgegeven tabel retourneren

In het volgende voorbeeld wordt de configuratie voor het vastleggen van wijzigingsgegevens voor de HumanResources.Employee tabel geretourneerd.

USE AdventureWorks2022;
GO

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

B. Configuratiegegevens voor wijzigingsgegevens voor alle tabellen retourneren

In het volgende voorbeeld worden configuratiegegevens geretourneerd voor alle ingeschakelde tabellen in de database die wijzigingsgegevens bevatten waartoe de aanroeper is gemachtigd.

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_help_change_data_capture;
GO