可以在trigger中使用它的两个逻辑表 inserted和deleted
在update时,表中的老数所会保存在deleted中
       要新增加的数据会保存在inserted中
所以通过这两个表可以确定,你要update的是那一行

解决方案 »

  1.   

    樓上說的是sqlserver中的吧
    oracle中如果想知道更新行欄位的新舊值,有二個關鍵詞 (:old_col,:new_col)
      

  2.   

    小弟知道,
    :old.fieldname  
    :new.fieldname
    就可以访问被更新的,和更新的记录了。那只是针对一条,如果我更新多行呢?
      

  3.   

    那就把:old.fieldname  /:new.fieldname 作为条件,再写一个update语句,如果在一张表操作,可能会遇到变异表的问题,建议还是把触发器建到一个临时表中去。