问答详情
源自:3-4 PL/SQL光标之光标的属性和光标数的限制

选项缺失或无效

代码:

/*

1.光标的属性

%found %notfound 是否取到记录

%isopen 判断光标是否打开

%rowcount 影响的行数(不是总行数)


2.光标数的限制


*/


SET serveroutput ON

DECLARE

--定义光标

cursor cemp is SELECT empno,empjob FROM EMP;

pempno EMP.empno%TYPE;

pjob EMP.empjob%TYPE;

BEGIN

--打开光标

open cemp;


IF cemp%isopen THEN

dbms_output.put_line('光标已经打开');

ELSE

dbms_output.put_line('光标没打开');

END IF;


loop

--取出一条记录

FETCH cemp INTO pempno,pjob;

exit WHEN cemp%notfound;


--打印rowcount的值

dbms_output.put_line('rowcount:'||%rowcount);


END loop;

close cemp;

END;




输出:

cursor cemp is SELECT empno,empjob FROM EMP

[Err] ORA-00922: 选项缺失或无效




不知道哪里错了

提问者:丨越丨 2018-08-31 09:32

个回答

  • 无丶丶丶丶丶丶丶聊
    2019-03-12 16:10:07

    dbms_output.put_line('rowcount:'||%rowcount);

    应该是dbms_output.put_line('rowcount:'||cemp%rowcount);

    %rowcount只是一个属性,你需要写是谁用到这个属性,少了光标

  • 动感帅超人
    2018-08-31 17:07:26

    最后输出的是光标的rowcount参数   光标呢?  丢了?