--不會,除非你insert觸發器時有不符合倏件不插入 SQL> --創建表 SQL> create table a(id int); SQL> create table b(id int); SQL> --創建觸發器 SQL> create or replace trigger trg_abi 2 before insert 3 on a 4 for each row 5 begin 6 insert into b values(:new.id); 7 end; 8 / SQL> --新增兩行 SQL> insert into a select 1 from dual union select 2 from dual; SQL> --查看b表,兩行 SQL> select * from b; ID ---------- 1 2
我的确实是行触发器,不过插入多条数据就只执行了一次,后台并没有出错!
再请教一下,如果我insert数据的时候是向一个表并发insert会有可能产生这种情况吗?
--不會,除非你insert觸發器時有不符合倏件不插入
SQL> --創建表
SQL> create table a(id int);
SQL> create table b(id int);
SQL> --創建觸發器
SQL> create or replace trigger trg_abi
2 before insert
3 on a
4 for each row
5 begin
6 insert into b values(:new.id);
7 end;
8 /
SQL> --新增兩行
SQL> insert into a select 1 from dual union select 2 from dual;
SQL> --查看b表,兩行
SQL> select * from b; ID
----------
1
2