Array
(
)

Trigger LOOP INFINITO

Cristiano Alves
   - 10 mai 2006

Pessoal
Eu tenho duas tabelas, fiz duas Triggers quando o Usuário alterar numa tabela, a trigger atualiza a outra e vice-versa. Só que como é esperado isso acaba gerando um Loop. Como posso desabilitar a execução de uma trigger?

Wagnerbianchi
   - 16 jun 2006

Olá ´CMAIFOR´,

Já que você está trabalhando com trigger de forma recursiva, você terá que implementar uma verificação:

BEGIN
SE (SELECT COUNT(CAMPO) FROM TABELA WHERE DADO =´DADO´) > 0;
NÃO INSERIR NA OUTRA TABELA ->>
SENÃO
INSIRA
END

Adicionando um controle assim, você evita o loop e encerra o ciclo.

Sua TRIGERS são FOR UPDATE, INSERT ou DELETE ??

Abraço!!