fetchbulkcollectinto批量效率的读取游标数据

fetchbulkcollectinto批量效率的读取游标数据

ID:34722978

大小:53.22 KB

页数:7页

时间:2019-03-10

fetchbulkcollectinto批量效率的读取游标数据_第1页
fetchbulkcollectinto批量效率的读取游标数据_第2页
fetchbulkcollectinto批量效率的读取游标数据_第3页
fetchbulkcollectinto批量效率的读取游标数据_第4页
fetchbulkcollectinto批量效率的读取游标数据_第5页
资源描述:

《fetchbulkcollectinto批量效率的读取游标数据》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Oracle中使用fetchbulkcollectinto批量效率的读取游标数据时间:2011-09-21相关文章:·oracle的存储过程指南·如何使用ADO访问Oracle数据库存储过程·OracleSpatial时态空间数据库设计·oracle数据库在linux上的安装·oracle同义词、序列、视图·oracle数据库性能优化-降低IO·教你Oracle的数据缓冲区是如何工作·Oracle数据库文件恢复与备份思路·Oracle10G默认用户名密码及解锁·IBM对OracleNoSQL数据库做出回应[网站建设之]Orac

2、le中使用fetchbulkcollectinto批量效率的读取游标数据通常我们获取游标数据是用fetchsome_cursorintovar1,var2的形式,当游标中的记录数不多时不打紧。然而自Oracle8i起,Oracle为我们提供了fetchbulkcollect来批量取游标中的数据,存中即是合理的。它能在读取游标中大量数据的时候提升效率,就像SNMP协议中,V2版比V1版新加了GET-BULKPDU一样,也是用来更高效的批量取设备上的节点值(原来做过网管软件开发,故联想到此)。  fetchbulkcollecti

3、nto的使用格式是:fetchsome_cursorcollectintocol1,col2limitxxx。col1、col2是声明的集合类型变量,xxx为每次取数据块的大小(记录数),相当于缓冲区的大小,可以不指定limitxxx大小。下面以实际的例子来说明它的使用,并与逐条取记录的fetchinto执行效率上进行比较。测试环境是Oracle10g 10.2.1.0,查询的联系人表sr_contacts中有记录数1802983条,游标中以rownum限定返回的记录数。  使用fetchbulkcollectinto获取游标

4、数据  declare        --声明需要集合类型及变量,参照字段的type来声明类型       typeid_typeistableofsr_contacts.sr_contact_id%type;      v_idid_type;             typephone_typeistableofsr_contacts.contact_phone%type;      v_phonephone_type;             typeremark_typeistableofsr_contacts.rem

5、ark%type;      v_remarkremark_type;     cursorall_contacts_curis--用rownum来限定取出的记录数来测试          selectsr_contact_id,contact_phone,remarkfromsr_contactswhererownum<=100000;        begin                openall_contacts_cur;        loop            fetchall_contacts_curb

6、ulkcollectintov_id,v_phone,v_remarklimit256;            foriin1..v_id.countloop--遍历集合                --用v_id(i)/v_phone(i)/v_remark(i)取出字段值来执行你的业务逻辑                null;--这里只放置一个空操作,只为测试循环取数的效率           endloop;            exitwhenall_contacts_cur%notfound;--exit不能

7、紧接fetch了,不然会漏记录        endloop;        closeall_contacts_cur;     end;   declare    --声明需要集合类型及变量,参照字段的type来声明类型    typeid_typeistableofsr_contacts.sr_contact_id%type;   v_idid_type;       typephone_typeistableofsr_contacts.contact_phone%type;   v_phonephone_type;  

8、     typeremark_typeistableofsr_contacts.remark%type;   v_remarkremark_type;   cursorall_contacts_curis--用rownum来限定取出的记录数来测试       selects

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。