表操作和触发器操作,在同一个事务中,所以select insert update delete 都是不行的。如下可借鉴 beckhambobo(beckham) ( ) 信誉:151 2003-12-20 10:22:00 得分:0
这样吧,建对应视图,做一视图的触发器:
create view v_njjjhb as select * from njjjhb;create or replace trigger njjjhb_01
INSTEAD OF insert on v_njjjhb
begin
update njjjhb set
xmztz=xmztz+:new.xmztz
snljwc=snljwc+:new.snljwc
snjz=snjz+:new.snjz
snjzzj=snjzzj+:new.snjzzj
bnxz=bnxz+:new.bnxz
bnwc=bnwc+:new.bnwc
where pk=:new.parent;
end;
其它也相应修改,以后所有插入就对v_njjjhb进行
这样吧,建对应视图,做一视图的触发器:
create view v_njjjhb as select * from njjjhb;create or replace trigger njjjhb_01
INSTEAD OF insert on v_njjjhb
begin
update njjjhb set
xmztz=xmztz+:new.xmztz
snljwc=snljwc+:new.snljwc
snjz=snjz+:new.snjz
snjzzj=snjzzj+:new.snjzzj
bnxz=bnxz+:new.bnxz
bnwc=bnwc+:new.bnwc
where pk=:new.parent;
end;
其它也相应修改,以后所有插入就对v_njjjhb进行
所以
ding!!!
v_n varchar2(10);
begin
v_n:=:new.name;
select count(*) from B into i where name=:new.name/:old.name;
:new.count:=i;
end;