oracle数据库中什么是游标
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
什么是游标?
游标(cursor)是一个指向上下文区的句柄或指针。通过游标,pl/sql程序可以控制上下文去和在处理语句时上下文区会发生些什么事情。可以把游标看作查询返回的行的集合。一般开发过程中,都使用显式游标
处理显示游标
1)声明游标
Cursor 游标名is select 语句
2)为查询打开游标
Open 游标名
3)将结果提取到pl/sql变量中
Fetch 游标名into 变量1,变量1,变量n(或者行变量)
Into子句中的变量的烈性都必须式与查询的选择列表的类型相兼容。
4)关闭游标
Close 游标名
举例:
declare
cursor c_a is select * from vio_temp where veh_owner='无';
a_row c_a%rowtype; /*定义变量a_row为记录类型*/
begin
open c_a;
loop
fetch c_a into a_row ;
exit when c_a %NOTFOUND; /*当c_a %NOTFOUND 为true时,退出循环,即检索完最后一行以后*/
insert into vio_invalidcar values (a_row.xh, a_row.hpzl,ar.hphm, a_row.vio_date, a_row.cross_id, a_row.vio_reason,
'查询不到对应车管信息','038032', a_row.vio_systime);
commit;
end loop;
close c_a;
end;