DECLARE
past_due exception;
CURSOR emp_cur IS
select distinct e.empno as enum,e.ename,e.hiredate,e.sal,e.job1,e.comm,e.deptno,e.mgr
from emp e join emp m
on m.mgr=e.empno;
c1 emp_cur%ROWTYPE;
BEGIN
OPEN emp_cur;
LOOP
FETCH emp_cur INTO c1;
if emp_cur%NOTFOUND then
raise past_due;
/* INSERT INTO newempl(emp_id,emp_nm,emp_sal)*/
insert into newemp(dno,dname,ddate,dbasic,djob,dcomm,dept)
values( c1.enum,c1.ename,c1.hiredate,c1.sal,c1.job1,c1.comm,c1.deptno);
dbms_output.put_line(c1.enum||' '||c1.ename);
END LOOP;
exception
when past_due then
raise_application_error(-2100,'fetching the records is completed');
END;
私のエラーは
エラー レポート: ORA-06550: 20 行目、列 PLS-00103: 次のいずれかを予期しているときに、シンボル "LOOP" が検出されました:
ORA-06550 の場合: 行 25、列 4: PLS-00103: 次のいずれかを予期しているときに、シンボル "end-of-file" が検出されました:
06550. 00000 - "行 %s、列 %s:\n%s" *原因: 通常は PL/SQL コンパイル エラーです。*アクション: エラーの意味がわかりません