通常将Oracle存储过程编译为本地编译方式的测试记录.
测试用表:
?
1 2 3 4 5 6 7 |
SQL> create table t1(rid number); |
测试用的存储过程:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 |
create or replace procedure pro_xcl(p1 varchar2) |
测试:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
SQL> set serveroutput on |
更改下,pro_xcl,将t1换成t_n表。
测试本地编译方式出来的存储过程运行速度.
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
-- 用本地编译方式编译存储过程pro_xcl |
本地编译方式要快0.6秒,没有快到想象的夸张的地步。
设置当前session程序编译方式默认为本地编译:
alter session set plsql_code_type=native;
设置数据库默认程序为本地编译方式:
alter system set plsql_code_type=native;
与PLSQL编译相关一些参数:
?
1 2 3 4 5 6 7 8 9 10 |
SQL> show parameter plsql |