Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server
Devolve o histórico de alterações da linguagem de definição de dados (DDL) associado à instância de captura especificada, uma vez que a captura de dados de alteração foi ativada para essa instância de captura. A captura de dados de alterações não está disponível em todas as edições do SQL Server. Para uma lista de funcionalidades suportadas pelas edições do SQL Server, consulte Edições e funcionalidades suportadas do SQL Server 2025.
Transact-SQL convenções de sintaxe
Syntax
sys.sp_cdc_get_ddl_history [ @capture_instance = ] N'capture_instance'
[ ; ]
Arguments
[ @capture_instance = ] N'capture_instance'
O nome da instância de captura associada a uma tabela de origem.
@capture_instance é sysname e não pode ser NULL.
Valores de código de retorno
0 (sucesso) ou 1 (fracasso).
Conjunto de resultados
| Nome da coluna | Tipo de dados | Description |
|---|---|---|
source_schema |
sysname | Nome do esquema da tabela fonte. |
source_table |
sysname | Nome da tabela fonte. |
capture_instance |
sysname | Nome da instância de captura. |
required_column_update |
bit | Indica que a alteração DDL exigiu que uma coluna na tabela de alterações fosse alterada para refletir uma alteração do tipo de dado feita na coluna de origem. |
ddl_command |
nvarchar(max) | A instrução DDL aplicava-se à tabela fonte. |
ddl_lsn |
binary(10) | Número de sequência logarítmica (LSN) associado à alteração DDL. |
ddl_time |
datetime | Tempo associado à alteração do DDL. |
Remarks
As modificações DDL na tabela de origem que alteram a estrutura da coluna da tabela de origem, como adicionar ou eliminar uma coluna, ou alterar o tipo de dado de uma coluna existente, são mantidas na tabela cdc.ddl_history . Estas alterações podem ser reportadas através deste procedimento armazenado. As entradas cdc.ddl_history são feitas no momento em que o processo de captura lê a transação DDL no log.
Permissions
Requer a pertença ao papel de base de dados fixo db_owner para devolver as linhas de todas as instâncias de captura na base de dados. Para todos os outros usuários, requer a permissão SELECT em todas as colunas capturadas na tabela de origem e, se uma função de seleção para a instância de captura foi definida, a associação a essa função de banco de dados.
Examples
O exemplo seguinte adiciona uma coluna à tabela HumanResources.Employee de origem e depois executa o sys.sp_cdc_get_ddl_history procedimento armazenado para reportar as alterações DDL que se aplicam à tabela de origem associada à instância HumanResources_Employeede captura .
USE AdventureWorks2022;
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