Ir para conteúdo

POWERED BY:

Arquivado

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

eduardo alberto

problemas com trigger

Recommended Posts

Olá a todos estou tento dor de cabeça em relação a uma trigger, como faço para que ela dispare um aviso quando for inserido no campo taxa valores menores que 50?

exemple

create or replace trigger TRG_FRETE

before update on FRETE

for each row

begin

INSERT INTO FRETE VALUES('PESO);

COMMIT;

end TRG_FRETE;

 

gostaria de ver se o peso e maior que 50 isso seria possivel ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deve ser uma coluna da tabela AONDE É EXECUTADA A TRIGGER

 

create or replace trigger TRG_FRETE
before INSERT OR update on FRETE
for each row
begin
  IF :NEW.TAXA NOT BETWEEN 0 AND 50 THEN
	 RAISE_APLICATION_ERROR(-2001,'VALOR DE TAXA '||:NEW.TAXA||' INVALIDO !!');
  END IF;
end TRG_FRETE;

Mas seria mais simples criar uma constraint

 

ALTER TABLE trg_frete
  ADD CONSTRAINT CHK_taxa (
	(TAXA BETWEEN 0 AND 50)
  )
/

Mas para cria-la será preciso que nenhum registro viole a regra , ou criar com a opção NOVALIDADE.

 

Veja detalhes no manuel.

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.