我怎么知道什么时候需要绑定变量?

时间:2019-05-10 16:59:50

标签: oracle plsql database-trigger

我有一个使用以下代码的简单触发器:

CREATE OR REPLACE TRIGGER started
BEFORE UPDATE OF mgr_start_date ON department
FOR EACH ROW
WHEN (new.mgr_start_date < old.mgr_start_date)
BEGIN
    :new.mgr_start_date := :old.mgr_start_date;
    DBMS_OUTPUT.PUT_LINE('Rejected backdate of mgr_start_date.');
END;

从赋值语句中删除任何冒号将在编译时声明必须声明变量的错误。我的理解是,这些冒号用于“绑定变量”,并且使用这些类型的变量无需每次都重新解析整个语句。为什么在这种情况下需要绑定变量?为什么将等号视为变量?

0 个答案:

没有答案