Trigger LOOP INFINITO
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?
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?
Cristiano Alves
Curtidas 0
Respostas
Wagnerbianchi
10/05/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!!
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!!
GOSTEI 0