[MSSQL] - Script simples para desabilitar Triggers de um database

As vezes precisamos rapidamente desativar triggers de uma base de dados recém restaurada. Normalmente quando por exemplo, criamos uma base de testes a partir dos dados da oficial. Se não fazemos isso corremos o risco de estarmos fazendo testes que ativem triggers que podem gravar dados em outra base de produção de uma integração qualquer realizada através de triggers.

Para isso podemos utilizar este simples script:

SELECT   'alter table ' + tb.name + ' disable trigger ' + tr.name
FROM     sys.triggers tr,
         sys.tables tb
WHERE    tr.parent_id = tb.object_id
ORDER BY 1




  • Pelo Enterprise Management Studio fazemos a cópia do resultado da query acima:





  • Colamos na área de query e rodamos para desativar as triggers:


Após isso as triggers não serão mais acionadas pelas operações da base de testes.
É possível também trocarmos a palavra chave "disable" por "drop" para então removermos de vez as triggers da base.

Obs.: Revise sempre em qual database você está antes de rodar os scripts. Por segurança procure sempre utilizar o comando "USE DATABASE" antes de rodar seus comandos, para garantir sempre que está na base correta.

Postar um comentário

Postagens mais visitadas deste blog

[eXo] - Remover janela de solicitação de Registro

[Kettle] - Ajuste de problema com horário de verão

Pegando informações de Sessão no Oracle e equivalente no MSSQL