客户要求有日志,记录每一次的删除操作我想求一个触发器, 因为小弟以前很少用这个东东!每当用户对表table_admin作操作时, 都会在 table_re 中写入一条记录table_re 要求有主键, 有用户的IP, 用户的机器名, 操作时间还请各位大哥, 不要吝惜笔墨, 多多赐教!!!

解决方案 »

  1.   

    create or replace trigger Tg_table_admin 
      after delete on table_admin 
      for each row
    declare
      -- local variables here
    begin
      -- 主键考虑用序列;
      -- 用户ip和机器名从session中来;
      -- 插入数据需要table_admin当前删除的部分信息;
      insert into table_re values(pk,ip,name,sysdate,...);
      commit;
    end table_log;
      

  2.   

    create or replace trigger Tg_table_admin 
      after delete on table_admin 
      for each row
    declare
      -- local variables here
    begin
      -- 主键考虑用序列;
      -- 用户ip和机器名从session中来;
      -- 插入数据需要table_admin当前删除的部分信息;
      insert into table_re values(pk,ip,name,sysdate,...);
      commit;
    end Tg_table_admin;
      

  3.   

    我也是orcale的初学者 楼上的很有借鉴意义 谢谢!
      

  4.   

    feng2中基本思路是对的,但写法中有一个错误。
    在触发器中不能用commit,rollback等操作!!
      

  5.   

    还有一个错误,最后结束的时候就是end,不用带触发器名