Bạn không thể truy vấn bảng thay đổi trong trình kích hoạt.
Xem phần này:https://docs.oracle.com/cd/B19306_01/appdev.102/b14251/adfns_triggers.htm
Hãy thử mã này thay thế:
create or replace
TRIGGER log_changes
AFTER INSERT OR UPDATE OR DELETE
ON passengerlist1
FOR EACH ROW
DECLARE
t_name varchar2(255);
t_surname varchar2(255);
BEGIN
IF DELETING THEN
SELECT PERSON1.GIVENNAME, PERSON1.FAMILYNAME INTO T_NAME, T_SURNAME
FROM PERSON1
WHERE PERSON1.PERSONID = :OLD.PERSONID;
INSERT INTO LOGS VALUES (T_NAME, T_SURNAME, :OLD.FLIGHTID, SYSDATE);
END IF;
IF UPDATING OR INSERTING THEN
SELECT PERSON1.GIVENNAME, PERSON1.FAMILYNAME INTO T_NAME, T_SURNAME
FROM PERSON1
WHERE PERSON1.PERSONID = :NEW.PERSONID;
INSERT INTO LOGS VALUES (T_NAME, T_SURNAME, :NEW.FLIGHTID, SYSDATE);
END IF;
END;
/