Oracle Cursor详解与实例
游标是SQL的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,
摘要:详细介绍Oracle数据库中关于游标的定义和使用。通过实例操作来深入了解cursor的用法和用处。
一:相关概念 1、conceptWhen Oracle Database executes aSQL statement , it stores the result set and processing information in anunnamed private SQL area . A pointer to this unnamed area , called a cursor ,let you retrieve the rows of the result set one at a time . Cursor attributesreturn information about the state of the cursor .
2、概念:二:具体类型及使用 1、implicit cursor
3)示例:
begin
update student set sname='chy' WHERE sno='1';
if sql%isopen then
dbms_output.put_line('cursor is opening !');
else
dbms_output.put_line('cursor is closed !');
end if;
if sql%found then
dbms_output.put_line('DML is successed !');
else
dbms_output.put_line('DML is failed !');
end if;
if sql%notfound then
dbms_output.put_line('DML is failed !');
else
dbms_output.put_line('DML is successed !');
end if;
dbms_output.put_line(sql%rowcount||' is the number of result !');
exception
when no_data_found then
dbms_output.put_line('Sorry No data');
when too_many_rows then
dbms_output.put_line('Too Many rows');
end;
2、explicit cursor
很直白的说明了显示游标的用处、以及用法。
] IS select xxx from xxxwhere xxx;