Oracle学习:批量SQL实例分析与比较

Oracle学习:批量SQL实例分析与比较 1

Oracle学习:批量SQL实例分析与比较 2

【IT168手艺】PL/SQL引入过程化言语的响应元素,好比前提分支或者轮回,不外,SQL本身仍然作为主体嵌套于此中,因为需要SQL引擎才能施行SQL号令,对于PL/SQL法式,往往具有很多PL/SQL引擎 – SQL引擎之间的交互,过多如许的交互会对机能发生负面影响。

虽然从内部施行机制上来说,两个轮回有很大的区别,但从语法上来说,还长短常雷同的。不外有一个小细节需要留意,就是FORALL语句并没有对应的END语句。

下面引见若何获取第一条语句所影响的行数,这需要利用SQL%BULK_ROWCOUNT:

假设有一条SQL查询,前往的记实中包含5行,那么若是在PL/SQL中施行此查询,会有5次的PL/SQL SQL交互,若是利用BULK COLLECT,能够降低到1次。

另一个INDEX BY调集的示例(现实上利用跟上例一样的FOR轮回也能够):

这现实上也好理解,由于上面的INSERT语句每次影响的只要一行,所以第二例中,保留的是轮回中最初一次施行的INSERT所影响的行数,当然是1;而因为FORALL语句会将所有语句一次性提交到数据库,这也使得我们能够利用RETURNING INTO + BULK COLLECT获取所有插入的数据

加入电报群

【江湖人士】(jhrs.com)原创文章,作者:江小编,如若转载,请注明出处:https://jhrs.com/2018/20328.html

扫码加入电报群,让你获得国外网赚一手信息。

文章标题:Oracle学习:批量SQL实例分析与比较

(0)
江小编的头像江小编
上一篇 2018-05-03 03:51
下一篇 2018-05-03 03:53

热门推荐

Leave a Reply

Sending

国外老牌便宜域名服务商Namecheap注册com域名大优惠,抢到就赚到,优惠码:NEWCOM698
$5.98/年
直达官网