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.
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 AdventureWorks2008R2;
GO
EXECUTE sys.sp_cdc_get_captured_columns
@capture_instance = N'HumanResources_Employee';
GO
Siehe auch