日期:2014-05-17  浏览次数:20955 次

oracle 更改表名及引用对象
 描述:从用户A迁移所有数据到用户B  现在需要更改用户B的表名称
 问题: 1. 如何更改表的名称 因为多 所以想批量
        2. 名称改完后如何能自动更新引用该表旧表名的其他oracle对象,如 过程 视图 函数。 不能自动给出更新方法也行 ? 
  
  请高手不吝赐教,分不多了 ,见谅吧,谢谢。。 
Oracle

------解决方案--------------------
1、借助于字典表生成批量修改表明的语句,如select 'rename ...'
2、到处过程、函数等定义批量替换
------解决方案--------------------
第一个问题,如果你存在一个表test,想更名为test_gf,用rename test to test_gf。
第二个问题,select * from dba_OBJECTs ,dba_source where dba_source.NAME  = dba_OBJECTs.Object_Name 
and dba_source.text like '%TRIAGE%'可以查出所有含有TRIAGE的对象,然后你可以再一一去解决。