2014-10-04 Created By BaoXinjian
一、摘要
PL/SQL程序中运行SQL语句是存在开销的,因为SQL语句是要提交给SQL引擎处理。
这种在PL/SQL引擎和SQL引擎之间的控制转移叫做上下文却换,每次却换时,都有额外的开销。
但是,FORALL和BULK COLLECT可以让PL/SQL引擎把多个上下文却换压缩成一个,这使得在PL/SQL中的要处理多行记录的SQL语句执行的花费时间骤降。
1. FORALL与BULK COLLECT的使用方法:
(1). 使用FORALL比FOR效率高,因为前者只切换一次上下文,而后者将是在循环次数一样多个上下文间切换。
(2). 使用BLUK COLLECT一次取出一个数据集合,比用游标条取数据效率高,尤其是在网络不大好的情况下。但BLUK COLLECT需要大量内存。
2. 未使用批处理时,系统需频繁切换上下文
var cpro_id = "u6885494";