quarta-feira, janeiro 30, 2008

Habilitando e desabilitando Triggers no SQL Server via T-SQL

Essa é uma "diquinha" bem simples, de um recurso que nem todos que lidam com o SQL Server conhecem. Através do Transact SQL (T-SQL) é possível habilitar e desabilitar triggers, sem a necessidade de excluí-las ou comentá-las (como a maiores do pessoal faz). A sintaxe é bem simples:

alter table nome_tabela
[disable, enable] trigger nome_trigger


Exemplo

Suponha que se tenha a tabela tab_venda, e nela uma trigger chamada trg_atualiza_limite_cliente. Para desabilitar essa trigger, a linha SQL ficaria como a seguir:


alter tabl
e
tab_venda

disable trigger trg_atualiza_limite_cliente


Para habiltá-la novamente, substitua disable por enable. Simples não?

Até +

5 comentários:

Felipe Sbragia disse...

Se funcionasse seria legal...

Anônimo disse...

É lógico que funciona, inclusive voce pode usar dentro da procedure tambem.

Rock disse...

Preciso desabilitar a Trigger de uma tabela porem quando utilizo o código apresenta o seguinte erro:

ORA-00905: palavra-chave não encontrada

Pode me ajudar?

Obrigado

Fernando Nappe disse...
Este comentário foi removido pelo autor.
Fernando Nappe disse...

Olá Rock.

Esse comando é válido para o Microsoft SQL Server, pelo retorno acredito que vc esteja usando o ORACLE. No Oracle seria aglo assim:

ALTER TRIGGER !!nome_do_seu_trigger!! DISABLE;