您的位置:首页 > 数据库

pl/sql入门-光标

2013-11-26 19:36 302 查看
光标(Cursor)==ResultSet

光标语法:

CURSOR 光标名[(参数名 数据类型[,参数名 数据类型]...)]

IS SELECT 语句;

用于存储一个查询返回的多行数据

例如:

cursor c1 is select ename from emp;

打开光标: open c1;(打开光标执行查询)

取一行光标的值: fetch c1 into pjob;(取一行到变量中)

关闭光标:close c1;(关闭游标释放资源)

pjob必须与emp表中的job列类型一致:

定义:pjob emp.empjob%type;

光标的属性:notfound isopen

oracle默认允许打开的光标数是300个。

命令查看: show parameter cursor;

举例:

--

set serveroutput on

declare
--
cursor cemp is select  ename,sal from emp;
pename emp.ename%type;
psal       emp.sal%type;

begin
--open
open cemp

LOOP
fetch cemp into pename,psal;
--
exit when cemp%notfound;
--
dbms_output.put_line(pename || psal);
END LOOP;
close cemp;
end;
/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: