这是我的触发器,我不知道它有什么问题,因为它给了我那个错误
create or replace TRIGGER dk_enrolments_insert
AFTER INSERT ON dk_enrolments
FOR EACH ROW
DECLARE
CURSOR enrolment_cur(e_id dk_enrolments.enrol_id%TYPE) is
select o.offer_id, a.assmnt_id
from dk_assessments a, dk_offerings o
where a.offer_id=o.offer_id
AND e_id=:NEW.enrol_id;
enrolment_rec enrolment_cur%ROWTYPE;
BEGIN
OPEN enrolment_cur(:NEW.enrol_id);
LOOP
FETCH enrolment_cur INTO enrolment_rec;
EXIT WHEN enrolment_cur%NOTFOUND;
insert into dk_deliverables values(deliv_seq.nextval, enrolment_rec.assmnt_id,:NEW.enrol_id);
END LOOP;
CLOSE enrolment_cur;
END;
答案 0 :(得分:0)
我的猜测是
CURSOR enrolment_cur(e_id dk_enrolments.enrol_id%TYPE) is
这部分:dk_enrolments.enrol_id%TYPE
可能无法解析解析器理解的内容 - dk_enrolments.enrol_id
这定义在哪里?如果您不拥有该对象或该对象没有公共同义词,那么您需要包含该架构。我猜它是一个从表中外部定义的列。