Ir para conteúdo

POWERED BY:

Arquivado

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

lkey

Desfazer ação da trigger

Recommended Posts

Boa tarde Senhores! hehe

 

Minha duvida é a seguinte:

 

Tenho uma tabela onde tenho 2 tipo de campos que precisam ser validados.

 

Um campo é numerico o outro é date, gravado com data e hora.

 

Nao posso criar uma unique no campo pq a bendita hora vai deixar gravar duplicados no mesmo dia.

 

Queria criar uma trigger onde fosse validade o campo numerico em questao e somente a data do campo date que tenho, vcs acham possivel?

 

Preciso que a trigger valide o insert que foi feito e caso seja verdadeiro, desfaça o mesmo, poderia usar um select count(1) pra verificar a existencia do

registro antes, mais quero evitar selects nessa tabelas, pois os volumes desses insert sao altissimos.

 

Agradeço a ajuda desde já

 

abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma trigger de validação para a processamento por meio de raise_apllication_error.

 

A aplicação que chamou o insert ou update (escrita em java,plsql,delphi,zorg etc) e que deve fazer o

tratamento da exceção.

 

O tratamento de uma transaction (se for o caso) também fica a cargo da aplicação.

 

É mei difícil dizer qual a melhor forma disto ser feito pois depende de linguagem,ambiente,quantidade de dados,necessidade real de uma transaction etc.

 

Mas grosso modo basta sua trigger fazer algo assim :

 

if <condição erro> then
  raise_apllication_error(-20001,''aqui deu zebra);
end if;

Veja o manual para mais detalhes.

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.