所以我想请问到底触发器是不是只能对触发的那个表(input/outpuy)操作,所以在input表里触发时不能修改store表?????可以对别的表进行修改的!
程序上面可能有问题!
程序上面可能有问题!
解决方案 »
- ORA-01461错误
- Oracle 10g无法安装10203补丁
- oracle下socket通讯
- oracle 10g中的包含CLOB字段如何导入oracle8i?
- 请教个sql语句
- 在vb中用oo4o想oracle数据库中插入blob型数据的问题!
- 请问高手,在PLSQL Developer中能否象执行SQL SERVER 的存储过程一样去执行ORACLE的FUNCTION?真的 很急!!!
- 请问如何将TNSLSNR.EXE做为一个服务项目,挂在"管理"->"服务"服务项里?
- 谁有Formatter Plus的正式注册码?
- 怎么将几个数据库文件合成一个
- 难道win2kpro和9i不兼容?!!试了十几遍我还是装不上去,不行了...
- ora-12154 tns:无法处理服务名?(文出,马上界铁,不出,也是)才鸟
create or replace trigger trigger_store_input
after insert or update or delete on input
for each row
begin
DBMS_OUTPUT.PUT_LINE('trigger is on!');
update store set s_quantity=s_quantity+:new.i_quantity
where store.g_id=:new.g_id;
end;
/create or replace trigger trigger_store_output
after insert or update or delete on output
for each row
begin
update store set s_quantity=s_quantity-:new.t_o_quantity+:new.t_r_quantity
where store.g_id=:new.t_g_id;
end;
create or replace trigger trigger_store_input
after insert or update or delete on input
for each row
begin
DBMS_OUTPUT.PUT_LINE('trigger is on!');
update store set s_quantity=s_quantity+:new.i_quantity
where store.g_id=:new.g_id;
end;
可以触发进货表(input) 但是,对于出货表(output),用以下程序:
create or replace trigger trigger_store_output
after insert or update or delete on output
for each row
begin
update store set s_quantity=s_quantity-:new.t_o_quantity+:new.t_r_quantity
where store.g_id=:new.t_g_id;
end;
就会出现错误“警告: 创建的触发器带有编译错误”,然后不能触发 只要我插入input表新数据后,库存表(store)里面的库存量(s_quantity)都能更新,但为什么当我建立output表触发器的时候却不行??难道建立trigger_store_output触发器需要和trigger_store_input触发器相联系?就是需要级联触发??
谢谢了!