日期:2014-05-16  浏览次数:20415 次

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

?修改项目时,涉及到了Oracle中许多表的修改(包括:增加、删除字段,修改注释等)。由于开始没有进行记录,造成在上测试机时,忘记了具体修改过哪些表了。后来在网上查找了一些资料,例如:

?

??? 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后面加上相应的条件表达式)

?

??? 通过对查询结果中最后修改时间的降序排列,就可以知道那些表的结构修改过了。

?

??? 另外,希望大家好好练练上面涉及的SQL语句,他们能实现好多其他有用的功能的,希望大家可以多多研究^_^!

?

摘自:http://blog.csdn.net/accp_fangjian/article/details/6050527

?