【发布时间】:2015-08-15 20:33:01
【问题描述】:
当我尝试创建此触发器时:
CREATE OR REPLACE trigger T25
BEFORE DELETE ON employer
FOR EACH ROW
DECLARE
vnbr number;
BEGIN
SELECT * into vnbr from employer where role="utilisateu";
if(:old.role=vnbr) THEN
RAISE_APPLICATION_ERROR(-20001,'impossible de supprimer ce role');
END IF;
END;
/
我得到这个错误:
PL/SQL:忽略 SQL 语句
PL/SQL: ORA-00904: "utilisateu": 标识符无效
【问题讨论】:
-
请阅读手册中“Oracle SQL的基本要素”一章中的“文字”部分:docs.oracle.com/cd/E11882_01/server.112/e41084/…
-
vnbr是一个标量变量,而不是一个集合变量。所以,select * into vnbr会失败。
标签: oracle plsql oracle11g triggers