sys.sp_cdc_get_ddl_history (języka Transact-SQL)
Zwraca zmiany języka (DDL) definicja danych historia skojarzone z określonym przechwytywania wystąpienie ponieważ przechwytywania danych zmiana zostało włączone dla, przechwytywanie wystąpienie.Przechwytywanie danych zmian jest dostępne tylko w SQL Server 2008 wersji Enterprise, Developer i oceny.
Składnia
sys.sp_cdc_get_ddl_history [ @capture_instance = ] 'capture_instance'
Argumenty
- [ @ capture_instance = ] 'capture_instance"
Jest nazwą przechwytywania wystąpienie skojarzone ztabela źródło. capture_instancejest sysname i nie może być NULL.
Wartości kodów powrotnych
0 (sukces) lub 1 (błąd)
Zestawy wyników
Nazwa kolumny |
Typ danych |
Opis |
---|---|---|
source_schema |
sysname |
Nazwa schematutabela źródło. |
source_table |
sysname |
Nazwatabela źródło. |
capture_instance |
sysname |
Nazwa wystąpienieprzechwytywania. |
required_column_update |
bit |
Wskazuje, że zmiana DDL wymagane kolumna Zmień tabela zmienione, aby odzwierciedlić zmiany typu danych źródło kolumna. |
ddl_command |
nvarchar(max) |
DDLinstrukcja zastosowane dotabela źródło. |
ddl_lsn |
binary(10) |
Kolejny numer dziennika (LSN) związane ze zmianą DDL . |
ddl_time |
datetime |
Czas związany ze zmianą DDL . |
Uwagi
DDL modyfikacje źródłotabela zmiana strukturykolumnatabela źródło, takie jak dodanie lub usunięcie kolumnalub zmieniania typu danych istniejącej kolumna, są obsługiwane w cdc.ddl_historytabela. Zmiany te można podać za pomocą tej procedura składowana.Wpisy w cdc.ddl_history są dokonywane na czas przechwytywania proces odczytuje DDL transakcji w informacje
Uprawnienia
Wymaga członkostwa w db_owner stałej rola bazy danych zwrócić wiersze dla wszystkich wystąpień przechwytywania w bazie danych.Dla innych użytkowników wymaga uprawnienie SELECT wszystkich przechwyconych kolumn wtabela źródłoi, jeśli zdefiniowano bramkowania roli przechwytywania wystąpienie członkostwo w tej rola bazy danych.
Przykłady
Poniższy przykład dodaje kolumna dotabela źródłoHumanResources.Employee , a następnie uruchamia sys.sp_cdc_get_ddl_historyprocedura składowana do zgłaszania zmian DDL , które stosuje się dotabela źródłoskojarzonej z przechwytywania wystąpienie HumanResources_Employee.
USE AdventureWorks2008R2;
GO
ALTER TABLE HumanResources.Employee
ADD Test_Column int NULL;
GO
-- Pause 10 seconds to allow the event to be logged.
WAITFOR DELAY '00:00:10';
GO
EXECUTE sys.sp_cdc_get_ddl_history
@capture_instance = 'HumanResources_Employee';
GO
Zobacz także