加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle中查看最近被修改过的表的方法

发布时间:2020-12-12 15:43:33 所属栏目:百科 来源:网络整理
导读:修改项目时,涉及到了Oracle中许多表的修改(包括:增加、删除字段,修改注释等)。由于开始没有进行记录,造成在上测试机时,忘记了具体修改过哪些表了。后来在网上查找了一些资料,例如: www.2cto.com 1、select uat.table_name from user_all_tables uat
修改项目时,涉及到了Oracle中许多表的修改(包括:增加、删除字段,修改注释等)。由于开始没有进行记录,造成在上测试机时,忘记了具体修改过哪些表了。后来在网上查找了一些资料,例如: www.2cto.com 1、select uat.table_name from user_all_tables uat 该SQL可以获得所有用户表的名称 2、select object_name,created,last_ddl_time from user_objects 该SQL可以获得所有用户对象(包括表)的创建和最后修改时间 综合以上SQL,总结了如下语句: select uat.table_name as 表名,(select last_ddl_time from user_objects where object_name = uat.table_name ) as 最后修改日期 from user_all_tables uat 通过该语句,可以得到所有表的最后修改时间。(大家可以根据实际情况在该SQL后面加上相应的条件表达式) 通过对查询结果中最后修改时间的降序排列,就可以知道那些表的结构修改过了。 由于应用的bug导致部分数据字段被更新为空,发现时已经有两个月了,这些字段内容挺重要的,如何才能找回这些数据呢? rman只能恢复某个点的数据,因为在此期间不断有insert,这些新增数据也会被update,因此任何一点的数据都不全,备份也是每天晚上备份,当天插入当天update的数据同样无法恢复。 方法:不完全的恢复的就一个rman,一个是logminer,感觉logminer不现实,时间太长了,使用rman进行基于时间点的不完全恢复后,使用read only打开数据库,将需要的表,导出,然后在使用rman进行数据库的完全恢复,思路是这样的,务必进行测试 ORACLE 中查询某个表中某条记录的修改记录方法如下: select * from v$sql where sql_text like 'update tableName%'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读