Du kan ikke hente poster fra den samme tabel i en rækkeudløser. Du kan få adgang til værdier fra den faktiske post ved at bruge :ny og :gammel (er dette din sag?). Udløseren kunne derefter omskrives til
CREATE OR REPLACE TRIGGER AFTERINSERTCREATEBILL
AFTER INSERT
ON READING
FOR EACH ROW
DECLARE
varCustID Varchar(10);
BEGIN
Select CustID INTO varCustID
From Address A
Join Meter M
on A.postCode = M.postCode
Where M.MeterID = :new.MeterID;
INSERT INTO BILL VALUES
(SEQBILLNO.NEXTVAL, SYSDATE, 'UNPAID' , 100 , varCustID , SEQREADNO.CURRVAL);
END;
Hvis du har brug for at forespørge på en anden post fra READING-tabellen, skal du bruge en kombination af sætningstriggere, rækketrigger og en PLSQL-samling. Et godt eksempel på dette er på AskTom.oracle.com