Freigeben über


sys.sp_cdc_get_captured_columns (Transact-SQL)

Gibt Metadateninformationen von Change Data Capture für die aufgezeichneten Quellspalten zurück, die von der angegebenen Aufzeichnungsinstanz nachverfolgt wurden. Change Data Capture ist nur in den Editionen SQL Server 2008 Enterprise und Developer sowie in der Evaluierungsversion verfügbar.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

sys.sp_cdc_get_captured_columns 
    [ @capture_instance = ] 'capture_instance'

Argumente

  • [ @capture\_instance = ] 'capture_instance'
    Der Name der mit einer Quelltabelle verknüpften Aufzeichnungsinstanz. capture_instance ist vom Datentyp sysname und kann nicht NULL sein.

    Führen Sie die gespeicherte Prozedur sys.sp_cdc_help_change_data_capture aus, damit ein Bericht über die Aufzeichnungsinstanzen für die Tabelle erstellt wird.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Spaltenname

Datentyp

Beschreibung

source_schema

sysname

Name des Quelltabellenschemas.

source_table

sysname

Name der Quelltabelle.

capture_instance

sysname

Name der Aufzeichnungsinstanz.

Spaltenname

sysname

Name der aufgezeichneten Quellspalte.

column_id

int

ID der Spalte in der Quelltabelle.

ordinal_position

int

Position der Spalte innerhalb der Quelltabelle.

data_type

sysname

Datentyp der Spalte.

character_maximum_length

int

Maximale Zeichenlänge der zeichenbasierten Spalte; andernfalls NULL.

numeric_precision

tinyint

Genauigkeit der Spalte, wenn sie auf numerischen Werten basiert; andernfalls NULL.

numeric_precision_radix

smallint

Basis der Genauigkeit der Spalte, wenn sie auf numerischen Werten basiert; andernfalls NULL.

numeric_scale

int

Dezimalstellen der Spalte, wenn sie auf numerischen Werten basiert; andernfalls NULL.

datetime_precision

smallint

Genauigkeit der Spalte, wenn sie auf datetime-Werten basiert; andernfalls NULL.

Hinweise

Verwenden Sie sys.sp_cdc_get_captured_columns, um Spalteninformationen zu den aufgezeichneten Spalten abzurufen, die durch die Abfrage der Aufzeichnungsinstanz über die Abfragefunktionen cdc.fn_cdc_get_all_changes_<capture_instance> oder cdc.fn_cdc_get_net_changes_<capture_instance> zurückgegeben wurden. Die Spaltennamen, IDs und Position bleiben während der Lebensdauer der Aufzeichnungsinstanz konstant. Nur die Spaltendatentypen ändern sich, wenn sich der Datentyp der zugrunde liegenden Quellspalte in der nachverfolgten Tabelle ändert. Spalten, die zu einer Quelltabelle hinzugefügt oder aus dieser gelöscht werden, wirken sich nicht auf die aufgezeichneten Spalten der vorhandenen Aufzeichnungsinstanzen aus. Weitere Informationen finden Sie unter Konfigurieren von Change Data Capture.

Verwenden Sie sys.sp_cdc_get_ddl_history, um Informationen zu DDL (Data Definition Language)-Anweisungen zu erhalten, die auf eine Quelltabelle angewendet werden. Alle DDL-Änderungen, die die Struktur einer nachverfolgten Quellspalte geändert haben, werden im Resultset zurückgegeben.

Berechtigungen

Erfordert die Mitgliedschaft in der festen Datenbankrolle db_owner. Für alle anderen Benutzer ist die SELECT-Berechtigung für alle aufgezeichneten Spalten in der Quelltabelle und, wenn eine Gatingrolle für die Aufzeichnungsinstanz definiert wurde, eine Mitgliedschaft in dieser Datenbankrolle erforderlich. Wenn der Aufrufer über keine Berechtigungen zum Anzeigen der Quelldaten verfügt, gibt die Funktion den Fehler 22981 zurück ("Das Objekt ist nicht vorhanden oder der Zugriff wurde verweigert").

Beispiele

Im folgenden Beispiel werden Informationen zu den aufgezeichneten Spalten in der HumanResources_Employee-Aufzeichnungsinstanz zurückgegeben.

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