大家好:
    公司遇到这样一个问题:历史系统中,原本属于A用户的表,被创建到B用户下面。而程序中很多地方使用A.TableName这样的形式来引用表,不修改表名无法运行。
    请教高手:有没有什么办法把一个用户的表移动到另一个用户下面?谢谢大家。

解决方案 »

  1.   

    or
    connect b/...
    create table TableName select * from A.TableName;
      

  2.   

    在A 用户下对B 用户下的表建同义词就可以了
    create or replace synonym tab_name1 for B.LAAGENTB;
    那么可以 select * from A.tab_name1 
      

  3.   

    通过导出,,再导入即可解决掉..
    首先导出该用户的数据对象9(按照用户方式导出),,然后删除该用户的数据对象..
    然后执行导入,, 关键要用到参数  fromuser=XXX  touser=XXXX.
    这样这些东西就会归属到目标用户下.----建议先备份..