Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

aticomismana

Cancelar execução de trigger no Firebird sem exception

Recommended Posts

Olá amigos,

 

Estou precisando criar um trigger no meu banco de dados Firebird do tipo BEFORE INSERT ou BEFORE UPDATE.

 

O problema é que faço um teste de variavel e após esse teste não sei como impedir a gravação do registro sem usar uma exception.

 

Sei com fazer isso com exception, mas quero interromper a trigger e a ação que a disparou sem usar uma exception.

 

No oracle e mysql encontrei alguns comandos como o raise. Mas, preciso para o Fire.

 

Alguém sabe como interrompo, ou cancelo, ou paro a trigger? Algum comando?

 

 

Obrigado ai pela ajuda de vcs a um baiano aflito.

 

 

Comando da Trigger:

-------------------------------------------------------------------------------------------

CREATE OR ALTER TRIGGER FOLHA_FUNC_INATIVO FOR FOLHA

ACTIVE BEFORE UPDATE POSITION 2

AS

 

declare variable STATUSFUNC integer;

 

BEGIN

 

select

f.origem

from funcionarios f

where

f.funcionarios=new.funcionarios

INTO: STATUSFUNC;

 

if (statusfunc = 2) then

 

begin

 

PRECISO USAR UM COMANDO PARA SAIR AQUI

 

end

 

END

-------------------------------------------------------------------------------------------

Compartilhar este post


Link para o post
Compartilhar em outros sites

A gravação seria na tabela da trigger.

 

Aqui tem um problema , a aplicação dá insert ...

 

O BD não retorna erro, você supõe que o insert foi aceito.

 

na minha opinião se não vai gravar é melhor dar um raise e subir o erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.