PL/SQL批处理语句(BULK COLLECT子句和FORALL语句)
Oracle为PL/SQL中的SQL相关功能提供了FORALL语句和BULK COLLECT子句,显著的增强了SQL相关功能。这两个语句一起被称作PL/SQL的批处理语句。Oracle为什么要提供这两个语句呢?我们首先了解一下PL/SQL的引擎。该引擎可以安装在数据库,或者应用开发工具上,例如Oracle Froms。当PL/SQL运行引擎执行一个代码块时,引擎本身只会处理过程语句,而SQL语句是发送给SQL引擎执行。SQL语句的执行时是由数据库的SQL引擎负责,再将执行结果返回给PL/SQL引擎。
以下是PL/SQL引擎运行原理:
这种PL/SQL引擎和SQL引擎之间的控制转移叫做上下文切换。每次发生切换时,都会有额外的开销。通过FORALL语句和BULK COLLECT子句,可以把两个引擎的通行进行微调,让PL/SQL更有效地把多个上下文切换压缩成一个切换,从而提升程序的性能。
1.通过BULK COLLECT加速查询
不管是显示游标还是隐式游标,都可以通过BULK COLLECT在数据库的单次交互中获取多行数据。BULKCOLLECT减少了PL/SQL引擎和SQL引擎之间的切换次数,因此也减少了提取数据时的额外开销。
创建一张测试数据表:create table my_objects as select * from user_objects;<喎
>更多相关文章
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 12-05亚马逊推出新一代基础模型 任意模态生成大模
- 12-05OpenAI拓展欧洲业务 将在苏黎世设立办公室
- 12-05微软质疑美国联邦贸易委员会泄露信息 督促其
- 12-05联交所取消宝宝树上市地位 宝宝树:不会对公
- 12-04企业微信致歉:文档打开异常已完成修复
相关文章
24小时热门资讯
24小时回复排行
热门推荐
最新资讯
操作系统
黑客防御