【发布时间】:2017-03-26 09:23:01
【问题描述】:
触发器没有按预期工作并给出编译错误
错误(7,11):PLS-00201:必须声明标识符“NA.TITLE_ID”
这是我的触发器
CREATE OR REPLACE TRIGGER is_title_available
BEFORE INSERT ON rental
REFERENCING OLD AS o NEW AS na
FOR EACH ROW
WHEN (na.TITLE_ID > 0)
DECLARE
isavailable boolean;
temp number;
title_not_available EXCEPTION;
BEGIN
temp :=na.TITLE_ID;
if(TITLE_AVAILABLE(temp)) then
dbms_output.put_line('title available rent entry inserted');
else
raise title_not_available;
end if;
END;
这是我的表架构
CREATE TAble rental(
BOOK_DATE date DEFAULT sysdate primary key,
MEMBER_ID int,
COPY_ID int ,
TITLE_ID int,
ACT_RET_DATE date,
EXPIRY_RET_DATE date DEFAULT sysdate+2
);
ALTER TABLE rental
ADD CONSTRAINT fk_member_rental
FOREIGN KEY (MEMBER_ID)
REFERENCES MEMBER(MEMBER_ID);
【问题讨论】:
标签: database oracle compiler-errors