小编Ins*_*ion的帖子

创建触发器引发异常

我试图在插入表之前编写一个触发器.

它检查特定值,如果它无效,它将引发异常

CREATE OR REPLACE TRIGGER insert_birthdate
      BEFORE INSERT ON student 

DECLARE 
     invalid_date EXCEPTION ;
BEGIN
    IF(NEW.birthdate >= sysdate - interval '16' year )
    THEN RAISE invalid_date ;
    END IF ;
EXCEPTION
    WHEN invalid_date THEN
         RAISE_APPLICATION_ERROR(-20500, 'AGE MUST BE GREATER THAN 16 !!');
END;
/
Run Code Online (Sandbox Code Playgroud)

这是行不通的.

这个输出,有什么帮助吗?

Warning: Trigger created with compilation errors.

SQL>
SQL> show errors
Errors for TRIGGER INSERT_BIRTHDATE:

LINE/COL ERROR
-------- ----------------------------------------------------------
4/2      PL/SQL: Statement ignored
4/8      PLS-00201: identifier 'NEW.BIRTHDATE' must be declared
SQL>
Run Code Online (Sandbox Code Playgroud)

sql triggers plsql

0
推荐指数
1
解决办法
84
查看次数

标签 统计

plsql ×1

sql ×1

triggers ×1