首页 > 开发 > 综合 > 正文

如何知道表记录最后被更新的时间

2024-07-21 02:33:48
字体:
来源:转载
供稿:网友
  copy from The Oracle (tm) Users' Co-Operative FAQ  假如需要记录每条记录被dml操作的最后时间,需要额外的设置。  提供3种方法,不过都麻烦。  1.使用触发器,当发生dml的时候,记录操作信息(需要创建日志表或者在表增加额外的字段)   2.审计 Oracle audit (日志表sys.aud$在系统表空间上,假如dml频繁可能引起表空间紧张)  3.使用logminer分析日志(麻烦,不过在检查数据违规修改的时候很有用)  如下使用trigger实现的方法  增加last_modified_by   last_modified_time 2个子段  set echo on  create or replace trigger marktest_biu  before insert or update  on marktest  for each row  ——  declare  ——  v_last_modified_by     varchar2(30) ;  v_last_modified_on     date         ;  ——  begin  ——  elect  user  ,sysdate  into  v_last_modified_by  ,v_last_modified_on  from dual ;  ——  :new.last_modified_by := v_last_modified_by ;  :new.last_modified_on := v_last_modified_on ;  ——end ;  /  需要编写pl/sql代码;

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表