- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
批量绑定—BULKCOLLECT
批量绑定— BULK COLLECT
在 PL/SQL 编码中,经常会从表中获取结果集,然后进行一些逻辑处理,再生成新的数据。我们想到的最直接的方法就是使用游标。从 Oracle8i 开始,出现了一个新的子句:BULK COLLECT。可以降低 SQL 引擎到 PL/SQL 引擎的上下文交换(context switch)次数,从而实现数据的高速检索。
1. 速度比较
从表中获取结果集,我们常用的方法就是使用游标循环,我们看看它的执行速度:
我们再看一下完成同样的功能,BULK COLLECT 的执行速度:
BULK COLLECT 要比游标循环快得多。如果你的代码中有游标循环,并且你也正为这里执行缓慢而发愁,不妨试试 BULK COLLECT。
2. 没有 NO_DATA_FOUND 异常
不过要记得,SELECT ... BULK COLLECT INTO ... 不会引起 NO_DATA_FOUND 异常,虽然它的语法看起来和 SELECT ... INTO ... 类似。要判断 BULK COLLECT 是否获得数据,可以通过 COUNT 方法:
3. 其他使用
除了 SELECT INTO 外,还可以在 FETCH INTO 和 RETURNING INTO 子句中使用 BULK COLLECT:
4. 联合数组中使用 BULK COLLECT
前面我们举的例子,都是用的嵌套表,其实也可以使用联合数组:
BULK COLLECT 生成的集合,下表是默认从1开始的数字,步进为1,所以联合数组的索引,不能使用 varchar2 类型。如果你不小心使用了 varchar2 类型作为联合数组的索引,就会出现下面的错误:
5. VARRAY 数组中使用 BULK COLLECT
而对于 VARRAY 数组,BULK COLLECT 也适用,不过定义时,其长度必须得大于或等于结果集的长度:
如果 VARRAY 数组长度定义得过小,则会提示错误:
如果 VARRAY 数组长度定义得过大,没什么影响,而且也不会占用多余的内存空间:
不过推荐首选联合数组,或是嵌套表,在这里虽然可以使用 VARRAY 数组,但显然是不太合适的,就像steven 所介绍的那样。
6. 动态 SQL 中使用 BULK COLLECT
Oracle9i 之前,BULK COLLECT 只能用在静态 SQL 中,从 Oracle9i 开始,动态 SQL 中也可以使用 BULK COLLECT:
您可能关注的文档
- 归并系数及配筋放大系数.doc
- 弥散张量成像评估亚低温治疗弥漫性轴索损伤的优势.doc
- 当前国家鼓励发展的环保产业设备(产品)目录.doc
- 形函数.doc
- 形近字2003word版本.doc
- 影像解剖.doc
- 彻底搞定用Xdoclet生成Hibernate所有配置文件.doc
- 待定系数求二次函数导学案.doc
- 待定系数法去顶一次函数.doc
- 待定系数法分解因式.doc
- 中国国家标准 GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- 《GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计》.pdf
- 中国国家标准 GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- 《GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置》.pdf
- 中国国家标准 GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- GB/T 17889.4-2024梯子 第4部分:铰链梯.pdf
- 《GB/T 17889.4-2024梯子 第4部分:铰链梯》.pdf
最近下载
- 百日咳试题附有答案.docx VIP
- 2024年广东省深圳市光明区人大常委会办公室招聘一般类岗位专干12人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 高中语文任务驱动型材料作文:枯燥与热闹审题指导(含解析).docx VIP
- 某镇卫生院污水设计方案.pdf VIP
- 2024年广东深圳市光明区人大常委会办公室招聘一般类岗位专干3人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 中考数学经验交流会发言稿.pdf
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【高频考点汇总500题】模拟卷及参考答案详解.docx VIP
- 《溜冰圆舞曲和雷鸣电闪波尔卡》精品课件2023.pptx
- 水利项目安全评价报告.docx
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
文档评论(0)