Bạn thường sử dụng các điều khoản trong trình kích hoạt bằng :old
để tham chiếu đến giá trị cũ và :new
để tham chiếu giá trị mới.
Đây là một ví dụ từ tài liệu Oracle được liên kết ở trên
CREATE OR REPLACE TRIGGER Print_salary_changes
BEFORE DELETE OR INSERT OR UPDATE ON Emp_tab
FOR EACH ROW
WHEN (new.Empno > 0)
DECLARE
sal_diff number;
BEGIN
sal_diff := :new.sal - :old.sal;
dbms_output.put('Old salary: ' || :old.sal);
dbms_output.put(' New salary: ' || :new.sal);
dbms_output.put_line(' Difference ' || sal_diff);
END;
Trong ví dụ này, trình kích hoạt sẽ kích hoạt BEFORE DELETE OR INSERT OR UPDATE
:old.sal
sẽ chứa mức lương trước khi kích hoạt trình kích hoạt và :new.sal
sẽ chứa giá trị mới.