Seperti yang ditunjukkan @San, pemicu tingkat baris pada persons
umumnya tidak dapat menanyakan persons
tabel.
Anda memerlukan dua pemicu, pemicu tingkat baris yang dapat melihat jenis kelamin lama dan baru, dan pemicu tingkat pernyataan yang dapat menghitung. Anda juga dapat, jika menggunakan 11g, membuat pemicu gabungan dengan blok tingkat baris dan pernyataan.
create or replace trigger trg_stmt
after update
on persons
declare
l_cnt integer;
begin
select count(*)
into l_cnt
from persons;
dbms_output.put_line( 'There are now ' || l_cnt || ' rows.' );
end;
create or replace trigger trg_row
after update
on persons
for each row
begin
if( :new.gender != :old.gender )
then
dbms_output.put_line( 'Old gender = ' || :old.gender || ', new gender = ' || :new.gender );
end if;
end;