检查触发器中的未来日期
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;
/
如果用户尝试用未来的日期替换当前日期,我想启动一个触发器 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;
/