Trigger com Referencing new as new old as old

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
jks1903
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 188
Registrado em: Qui, 04 Fev 2010 8:08 am

Pessoal, uma dúvida um tanto quanto simples, mas que não consegui entender direito ainda, rsrs.

O que essa declaração "REFERENCING NEW AS NEW OLD AS OLD" altera na trigger?

Obrigado.
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

Literalmente,
ela faz referência(um alias na verdade) dos dados antigos (OLD) como OLD e novos(NEW) como NEW. Apesar de nunca ter usado de outra forma, poderia ter feito:
"REFERENCING NEW AS NOVO OLD AS VELHO".

Utilizado em triggers de update, caso precise fazer alguma validação com os valores antigos para se calcular os novos.
jks1903
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 188
Registrado em: Qui, 04 Fev 2010 8:08 am

Certo.
Mas essa declaração não é obrigatória então. Ou não é mais, certo?
Estou utilizando o Oracle 10g e consigo manipular os dados de :NEW sem essa declaração.

Obrigado pela resposta.
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

Então,
é um alias, um apelido apenas. Você pode usá-lo de forma "crua" sem precisar utilizar isso, que na verdade é uma redundância, no fim das contas.
jks1903
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 188
Registrado em: Qui, 04 Fev 2010 8:08 am

Certo.
Esclarecido.

Obrigado mesmo.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 6 visitantes