欢迎光临载入中......
载入中......
 
 
载入中......
 
 
日历
载入中......
最新日志
载入中......
最新留言
载入中......
最新回复
载入中......
真情链接
→『OracleTriggerInstance[1]』

Oracle 触发器的一个实例:

CREATE OR REPLACE TRIGGER trig_ab
AFTER INSERT   OR DELETE   OR UPDATE
ON a
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
Begin
   if updating then
        update b
        set flag='2'
        where RecordNumber=:old.RecordNumber;
    elsif inserting then
        insert into b
        (:old.RecordNumber,'1');
      
    elsif deleting then
        delete from b
        where RecordNumber=:old.RecordNumber;
    end if;
End;
/

详细的解释:

如何在Oracle中建立这样一些触发器?
:      在Oracle中有两张表,一张A,一张B。
:      A和B都有RecordNumber字段,编号,其中A的是自动增加的。
:      A有两个需要用的字段,RecordNumber和IsProcessed,IsProcessed等于“是”或者
: “否”
:      B只有两个字段,RecordNumber和Flag,Flag是长度2的字符字段。
:      需要让A在插入一条记录后自动地往B添加一个新的RecordNumber号码相同的记录,
: 同时将B的Flag设置为“1”
:      需要让A在对A的字段A.IsProcessed修改后自动地把B中相对应的RecordNumber的Fl
: ag设置成“2”。
:      需要让A在删除了记录后自动地删除B中相对应的RecordNumber的记录。

晴川 发表于 2008-8-18 18:11:00 | 阅读全文 | 回复(0) | 引用通告 | 编辑
  • 标签:左手 
  • 发表评论:
    载入中......
     
    Powered by Oblog.