demonapple 2013-10-17 08:08
浏览 287
已采纳

请教一个自动计算触发器的写法

问题是这样的;oracle数据库
有一个分数表 fenshu(fs1,fs2,fs3)
有一个权值表 quanzhi(qz1,qz2)
实现触发器:往分数表里面插入或更新fs1,fs2,要能自动更新fs3数据。fs3=fs1*qz1+fs2*qz2
请问这个触发器该怎么实现?

  • 写回答

2条回答 默认 最新

  • zyn010101 2013-10-17 09:01
    关注

    权值表只有一条记录么?是的话试下下面的sql:
    [code="java"]
    create or replace trigger trig_updateFenshu
          after insert on fenshu
    for each row      
    begin       
       declare qz1 varchar(20);
    declare qz2 varchar(20);
    select * into qz1,qz2 from quanzhi;/*如果权值有多条,分页取对应的那条*/
    update fenshu set fs3=new.fs1*qz1+new.fs2*qz2 where fs1=new.fs1 and fs2=new.fs2;
      end
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?