Partilhar via


Implementar Gatilhos DDL

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de dados SQL no Microsoft Fabric

Este tópico fornece informações para o ajudar a criar gatilhos DDL, modificar gatilhos DDL e desativar ou eliminar gatilhos DDL.

Criação de Triggers DDL

Os gatilhos DDL são criados utilizando a instrução Transact-SQL CREATE TRIGGER para gatilhos DDL.

Para criar um gatilho DDL

Importante

A capacidade de retornar conjuntos de resultados de gatilhos será removida em uma versão futura do SQL Server. Gatilhos que retornam conjuntos de resultados podem causar comportamentos inesperados em aplicações que não foram concebidas para funcionar com eles. Evite retornar conjuntos de resultados de gatilhos em novos trabalhos de desenvolvimento e planeje modificar aplicativos que atualmente fazem isso. Para evitar que os gatilhos retornem conjuntos de resultados no SQL Server, defina a opção de desautorizar resultados dos gatilhos como 1. A definição padrão desta opção será 1 numa versão futura do SQL Server.

Modificação dos gatilhos DDL

Se tiver de modificar a definição de um gatilho DDL, pode ou eliminar e recriar o gatilho ou redefinir o gatilho existente numa única etapa.

Se alterar o nome de um objeto referenciado por um trigger DDL, deve modificar o trigger para que o seu texto reflita o novo nome. Portanto, antes de renomear um objeto, mostre primeiro as dependências do objeto para determinar se algum gatilho é afetado pela alteração proposta.

Um gatilho também pode ser modificado para encriptar a sua definição.

Para modificar um gatilho

Para visualizar as dependências de um gatilho

Desativação e Eliminação dos Gatilhos DDL

Quando um gatilho DDL deixar de ser necessário, pode desativá-lo ou apagá-lo.

Desativar um gatilho DDL não o elimina. O gatilho ainda existe como objeto na base de dados atual. No entanto, o gatilho não é ativado quando são executadas quaisquer instruções Transact-SQL em que foi programado. Os gatilhos DDL desativados podem ser reativados. Ativar um gatilho DDL faz com que dispare da mesma forma que o gatilho fazia quando foi originalmente criado. Quando os gatilhos DDL são criados, são ativados por defeito.

Quando um gatilho DDL é eliminado, é removido da base de dados atual. Quaisquer objetos ou dados sobre os quais o disparador DDL seja aplicado não são afetados.

Para desativar um gatilho DDL

Para ativar um gatilho DDL

Para eliminar um gatilho DDL