Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> How to use a statement level trigger?

How to use a statement level trigger?

From: Ford Desperado <ford_desperado_at_yahoo.com>
Date: 27 Apr 2005 07:07:20 -0700
Message-ID: <1114610840.576773.297090@l41g2000cwc.googlegroups.com>


I need to keep track of which rows are inserted, like this:

create table a(n number);
create table inserts_into_a(n number);
/

create trigger a_ins
before insert on a
for each row
begin
insert into inserts_into_a(n) values(:new.n); end;
/

insert into a(n) values(0);
select * from a;
select * from inserts_into_a;
/

drop table a;
drop table inserts_into_a;

It works, but I am not quite happy with the performance. The data gets into table a 100 rows at a time (OCI bulk inserts), so the trigger fires 100 times per one insert statement. I was wondering how to accomplish the same task using a statement level trigger, so that the trigger fires 100 times less often. Hopefully that could improve performance

TIA Received on Wed Apr 27 2005 - 09:07:20 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US