检查触发器中的未来日期

Check future date in trigger

如果用户尝试用未来的日期替换当前日期,我想启动一个触发器 date.But 触发器中可能不允许子查询。我该如何解决这个问题?任何建议....

  CREATE OR REPLACE TRIGGER check_join_date
        BEFORE UPDATE OF join_date ON DOCTOR
        FOR EACH ROW
        WHEN (NEW.join_date > (SELECT CURRENT_DATE+1 FROM DUAL) )
    BEGIN
        RAISE_APPLICATION_ERROR(-20509,'Do not Enter Future Date..');
    END check_join_date;
    /

我在 Oracle 中 运行 这段代码后收到此错误。

ORA-02251: subquery not allowed here

测试这个

CREATE OR REPLACE TRIGGER check_join_date
        BEFORE UPDATE OF join_date ON DOCTOR
        FOR EACH ROW
        WHEN (NEW.join_date > CURRENT_DATE+1)
    BEGIN
        RAISE_APPLICATION_ERROR(-20509,'Do not Enter Future Date..');
    END check_join_date;
    /