SQL> create table m(x int);
SQL> create or replace procedure proc1
2 as
3 begin
4 for i in 1..10000
5 loop
6 execute immediate
7 'insert into m values(:x)'using i;
8 end loop;
9 end;
10 /
SQL> create or replace procedure proc2
2 as
3 begin
4 for i in 1..10000
5 loop
6 execute immediate
7 'insert into m values('||i||')';
8 end loop;
9 end;
10 /
SQL> set timing on
SQL> exec proc1;
PL/SQL procedure successfully completed.
Elapsed: 00:00:00.81
------------------------------------------------------------------
SQL> set timing on
SQL> exec proc2;
PL/SQL procedure successfully completed.
Elapsed: 00:00:07.82