要求编写一个触发器,每个学生选课不超过五门
如下
Create or replace trigger enrol_inser
Before insert on enrolment
For each row
Declare
 asid varchar(20); 
Begin
       select sid 
       into asid
        From enrolment
        Group by sid,xueqi
        Having count(cno)>=5;
If :new.sid=asid then 
Raise_application_error(-20091122,’选课已经达到最高上限五门’);
End if;
 End;
/
 触发器创建成功,但是不能在选课表里插数据了,插入就报错:SQL> Insert 
  2  Into enrolment(sid,cno,grade,xueqi)
  3  Values('001','06','49','上');
Into enrolment(sid,cno,grade,xueqi)
     *
第 2 行出现错误:
ORA-01403: 未找到数据
ORA-06512: 在 "SCOTT.ENROL_INSER", line 4
ORA-04088: 触发器 'SCOTT.ENROL_INSER' 执行过程中出错
 
马上要交作业了,哪位高人救救我呀~~~万分感激~~~~(没那么多积分,就可怜可怜我吧~~~~)