gpt4 book ai didi

oracle - PLSQL:NEW和:OLD

转载 作者:行者123 更新时间:2023-12-03 10:07:49 26 4
gpt4 key购买 nike

谁能帮助我了解何时在PLSQL块中使用:NEW:OLD,但我发现很难理解它们的用法。

最佳答案

通常,您在trigger中使用这些术语,其中:old引用旧值,:new引用新值。
这是上面链接的Oracle文档中的示例

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;
在此示例中,触发器触发 BEFORE DELETE OR INSERT OR UPDATE :old.sal将包含触发触发器之前的薪水,而 :new.sal将包含新值。

关于oracle - PLSQL:NEW和:OLD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13135295/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com