日期:2014-05-17  浏览次数:20897 次

多条数据插入
请问下大侠们,
我有个A表和B表,我想A表在插入一条新数据之后 自动触发B表,在B表新增插入10条数据,这个应该怎么写?特别是B表的ID需要自动插入

------解决方案--------------------
写一个后置触发器,另外B表的Id可以采用Sequence来做ID的自动增长。
------解决方案--------------------
是的 行级触发器 下面只是个触发器的例子 改一下就能用
create or replace trigger t_insert
after insert or delete or update on test
for each row

begin
if inserting then
insert into test_audit values(test_seq.nextval,user,'insert',:new.name);
 
elsif updating then
insert into test_audit values(test_seq.nextval,user,'update',:new.name ||'_'||:old.name);

elsif deleting then
insert into test_audit values(test_seq.nextval,user,'delete',:old.name);
end if;

end;
------解决方案--------------------
在触发器中需要插入多少条 直接在触发器中实现是可以的。只要ID自增,不冲突完全可以。
------解决方案--------------------
插入多条,写循环罢。
自增列,使用序列(sequence)来实现。