create procedure bulk_deno1(
i_deptno in number
)
is
cursor emp_cur(icur_deptno number)
    is
    select empno,ename from emp where deptno=icur_deptno;
type t_empno is table of emp.empno%type index by binary_integer;
type t_ename is table of emp.ename%type index by binary_integer;
empno_col t_empno;
ename_col t_ename;
begin
    open emp_cur(i_deptno);
    fetch emp_cur bulk 
        into empno_col,ename_col;
    dbms_output.put_line('编号'||'名字 ');
    close emp_cur;
    for I in 1 ... empno_col.count loop
        dbms_output.put_line(empno_col(i) ||' '||ename_col(i));
    end;
end;
/

解决方案 »

  1.   


    fetch emp_cur bulk
    --应是
    fetch emp_cur bulk collect
      

  2.   


    for I in 1 ... empno_col.count loop
      dbms_output.put_line(empno_col(i) ||' '||ename_col(i));
      end;
    --此处还少个loop吧
    for I in 1 ... empno_col.count loop
      dbms_output.put_line(empno_col(i) ||' '||ename_col(i));
      end loop;
      

  3.   

    日,不好意思,还有个错,三点改成两点..for I in 1 ... empno_col.count loop
    --改为
    for I in 1 .. empno_col.count loop
    直接show errors或show error就可以看到错误了