随笔分类 - Oracle
摘要:Oracle主要有以下五种循环:Exit When、Loop、While、For(普通循环)、For(游标循环),下面举例一一说明(均为存储过程)。1. Exit When循环:create or replace procedure proc_test_exit_when isi number;begini:=0;LOOPExit When(i>5);Dbms_Output.put_line(i);i:=i+1;END LOOP;end proc_test_exit_when;2. Loop循环:create or replace procedure proc_test_loop isi
阅读全文
摘要:Oracle审计:http://wenku.baidu.com/view/053fcef34693daef5ef73d90.htmlAWR分析: http://wenku.baidu.com/view/0c7627781711cc7931b71664.html?from=rec&pos=0&weight=8&lastweight=2&count=5http://wenku.baidu.com/view/a95b4ee0524de518964b7d86.html?from=rec&pos=4&weight=34&lastweight=34&
阅读全文
摘要:概述: 在处理一个大约有400W数据的表中的冗余数据,使用cursor来一条一条处理的时候,发现耗时大约为5 hours左右。之后采用Oracle提供的BULK COLLECT和FORALL改写程序,耗时降到1个小时左右,速度提高了5倍左右。原因是:使用BLUK COLLECT一次取出一个数据集合,比用游标条取数据效率高,尤其是在网络不大好的情况下。但BLUK COLLECT需要大量内存。使用FORALL比FOR效率高,因为前者只切换一次上下文,而后者将是在循环次数一样多个上下文间切换。语法:1. select into中使用bulk collect SELECT id, code BU...
阅读全文
浙公网安备 33010602011771号