You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Oracle SQL Developer中查询近期被增删改的表?

找出Oracle中近期有DML操作的表

你当前用的all_objects.last_ddl_time记录的是**表结构变更(DDL)**的时间(比如CREATE TABLE、ALTER TABLE),和数据增删改(DML:INSERT/UPDATE/DELETE)无关,所以得用以下几种方法:

方法1:用USER_TAB_MODIFICATIONS视图

这个视图会记录表的DML操作统计,包括最后修改时间,但依赖Oracle的监控数据,默认可能延迟,需要手动刷新:

查询语句

SELECT owner, table_name, inserts, updates, deletes, last_modified
FROM all_tab_modifications
WHERE owner = 'DB_NAME'
  AND (inserts > 0 OR updates > 0 OR deletes > 0)
ORDER BY last_modified DESC;

注意事项

如果结果不实时,先执行以下语句刷新监控数据(需要对应权限):

EXEC DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO;

方法2:用AWR(自动工作负载库)查询历史DML

如果数据库开启了AWR,可以查近几天的历史SQL记录,定位有DML操作的表:

SELECT DISTINCT obj.owner, obj.object_name
FROM dba_hist_sqltext st
JOIN dba_hist_sql_plan sp ON st.sql_id = sp.sql_id
JOIN dba_objects obj ON sp.object_id = obj.object_id
WHERE (st.sql_text LIKE '%INSERT INTO%'
    OR st.sql_text LIKE '%UPDATE%'
    OR st.sql_text LIKE '%DELETE FROM%')
  AND obj.owner = 'DB_NAME'
  AND sp.timestamp > SYSDATE - 7 -- 调整为你需要的时间范围,比如近7天
ORDER BY obj.object_name;

注意事项

  • 需要有访问DBA_HIST_*系列视图的权限
  • AWR默认保留8天数据,保留时长可配置

方法3:启用审计长期跟踪

如果需要长期监控DML操作,建议开启Oracle审计:

开启审计

AUDIT INSERT, UPDATE, DELETE ON DB_NAME.* BY ACCESS;

(前提是数据库已开启审计功能,初始化参数AUDIT_TRAIL需设置为DB或DB_EXTENDED)

查询审计记录

SELECT obj$owner, obj$name, action_name, timestamp
FROM dba_audit_trail
WHERE obj$owner = 'DB_NAME'
  AND action_name IN ('INSERT', 'UPDATE', 'DELETE')
ORDER BY timestamp DESC;

方法4:用ASH查看近期活跃DML

如果要找最近1小时内的活跃DML操作表,可以用活动会话历史:

SELECT DISTINCT obj.owner, obj.object_name
FROM v$active_session_history ash
JOIN dba_objects obj ON ash.current_obj# = obj.object_id
WHERE ash.sql_opname IN ('INSERT', 'UPDATE', 'DELETE')
  AND obj.owner = 'DB_NAME'
  AND ash.sample_time > SYSDATE - 1 -- 调整时间范围,比如近1天
ORDER BY obj.object_name;

注意事项

  • 需要访问V$ACTIVE_SESSION_HISTORY的权限
  • ASH默认保留约1小时数据,具体时长取决于数据库配置

内容的提问来源于stack exchange,提问作者hkay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 11:25:34