oracle游标缓存,【oracle】游标——数据的缓存区

游标的使用可以让用户想错做数组一样操作查询出来的数据集,他提供了一种从集合性质的结果中提取单条记录的手段。

1.静态游标和REF游标。

2.静态游标分为显示游标(使用前必须有着明确的游标声明和定义)和隐式游标(PL/SQL自动管理)

显示游标语法

cursor cursor_name

[(parameter_name  datatype ,.....)]

is select_statement;

1.cursor cursor_name 声明游标,cursor_name是游标的名称

2.parameter_name 参数名称

3.datatype 参数类型

4.select_statement:   游标关联的select语句,但该语句不能是select.into.语句

游标的步骤:

1.声明游标

declare  cursor cursor_name

is select_statement

2.打开游标

open cursor_name

3.读取数据

fetch cursor_name into record_name

4.关闭游标

close  cursor_name

例子:

显示游标

Declare

cursor pdct_cur

is select * from productInfo;

cur_prodrcd productinfo%rowtype%    --声明一个变量,该变量类型是基于表productinfo的行对象

--cur_productname productinfo.Productname %type%    让游标中的类型与 表productinfo中列productname的类型一样

begin

open pdct_cur

loop

fetch pdct_cur into cur_prodrcd;

exit when  pdct_cur %NOTFOUND;   --利用游标属性实现没有记录退出循环

dbms_output.put_line(cur_prodrcd.productid || '-' || cur_prodrcd.productname || '-' || cur_prodrcd.productprice);

end loop;

close pdct_cur;

end;

隐式游标

declare

cur_productname productinfo.productname%type%;

cur_productprice productinfo.productprice%type%;

begin

select productname,productprice into cur_productname ,cur_productprice

from productinfo

where productid='0240040001' ;

if SQL%Found then

dbms_output.put_line(cur_prodrcd.productid || '-' || cur_prodrcd.productname || '-' || cur_prodrcd.productprice);

end if;

end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值