sys.sp_cdc_get_captured_columns (Transact-SQL)

Van toepassing op:SQL Server

Geeft wijzigingsdata-metadata-informatie terug voor de vastgelegde bronkolommen die door de gespecificeerde capture-instantie worden gevolgd. 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

Syntax

sys.sp_cdc_get_captured_columns [ @capture_instance = ] N'capture_instance'
[ ; ]

Arguments

[ @capture_instance = ] N'capture_instance'

De naam van de capture-instantie die gekoppeld is aan een brontabel. @capture_instance is sysname en kan dat niet zijn NULL.

Om te rapporteren over de capture-instanties voor de tabel, voer je de sys.sp_cdc_help_change_data_capture stored procedure uit.

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.
column_name sysname Naam van de gevangen bronkolom.
column_id int ID van de kolom in de brontabel.
column_ordinal int Positie van de kolom binnen de brontabel.
data_type sysname Kolomgegevenstype.
character_maximum_length int Maximale tekenlengte van de tekengebaseerde kolom; anders, NULL.
numeric_precision tinyint Precisie van de kolom indien numeriek; anders, NULL.
numeric_precision_radix smallint Precisieradix van de kolom als numeriek gebaseerd; anders, NULL.
numeric_scale int Schaal van de kolom als numeriek gebaseerd; anders, NULL.
datetime_precision smallint Precisie van de kolom als het op datum en tijd is gebaseerd; anders, NULL.

Remarks

Gebruik sys.sp_cdc_get_captured_columns om kolominformatie over de teruggegeven kolommen te verkrijgen door de queryfuncties van de capture-instantie te bevragen cdc.fn_cdc_get_all_changes_<capture_instance> of cdc.fn_cdc_get_net_changes_<capture_instance>. De kolomnamen, ID's en positie blijven constant gedurende de levensduur van de capture-instantie. Alleen het kolomgegevenstype verandert wanneer het datatype van de onderliggende bronkolom in de gevolgde tabel verandert. Kolommen die aan een brontabel worden toegevoegd of verwijderd, hebben geen effect op de gevangen kolommen van bestaande capture-instanties.

Gebruik sys.sp_cdc_get_ddl_history om informatie te verkrijgen over data definition language (DDL)-instructies die op een brontabel zijn toegepast. Alle DDL-wijzigingen die de structuur van een gevolgde bronkolom hebben aangepast, worden teruggegeven in de resultaatset.

Permissions

Vereist lidmaatschap van de db_owner standaard databaserol. Voor alle andere gebruikers is SELECT-machtiging vereist voor alle vastgelegde kolommen in de brontabel en, als er een gatingsrol voor het opnameexemplaren is gedefinieerd, lidmaatschap van die databaserol. Wanneer de aanroeper geen toestemming heeft om de brongegevens te bekijken, geeft de functie foutmelding 22981 (Object doesn't exist or access is denied.).

Examples

Het volgende voorbeeld geeft informatie over de gevangen kolommen in de HumanResources_Employee capture-instantie.

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_get_captured_columns @capture_instance = N'HumanResources_Employee';
GO