Trigger

Oracle

13/09/2012

Olá, preciso criar uma trigger em para deletar faturas indevidas.

fiz da seguinte forma:


BEGIN

    IF INSERTING PLACA
WHEN (DATA_LOG FROM TB_LOG_PLACA > PG_DT_FAT) (se for inserido uma nova fatura pela placa do carro e a data de log for maior que a data de vencimento da fatura, delete, lembrando que a placa e Data_Log estão em outra tabela)

THEN DELETE

    ELSIF INSERTING PLACA
WHEN (STATUS_PLACA=0) (senao, se a placa for STATUS_PLACA=0, delete, SENDO STATUS_PLACA está em outra tabela)

THEN DELETE


END IF;
END

como eu faço para dizer para a Trigger que os campos Placa e Data_Log e STATUS_PLACA estão na tabela x?
Camila Fernandes

Camila Fernandes

Curtidas 0

Respostas

Rodrigo Mourão

Rodrigo Mourão

13/09/2012

Uma trigger é um objeto que esta vinculado diretamente a tabela de onde esta sendo chamada. Se quiser acessr valores que estão em outra tabela pode suar select comum, buscando o valor desejado na tabela desejada fazendo o join com um ou mais campos da tabela onde a trigger está.


Assim para saber se o statu_placa execute o select em sua Tabela X buscando o campos status_placa fazendo um join com o campo específo na sua tabela de origem.


Abs!
GOSTEI 0
POSTAR