没有更好的办法,只能exp/imp再自己手工执行必要的脚本,看看第三方工具有没有办法.

解决方案 »

  1.   

    先用exp 把该用户的数据导出来
    再用imp 把数据导入到目的用户
      

  2.   

    >>光靠EXP和IMP无法一步到位,如解决可再加分。
    我也遇过类似问题,
    用 toad 导出成脚本呢,全文替换成自己要改动的,
    然后,再执行脚本同样,我用 pl/sql dev 也做过类似的, 一样,很顺利
      

  3.   

    可以同过使用一下的命令生成一个相应的脚本,然后执行该脚本的方式进行复制.set feedback off
    set heading off
    spool c:\create_scritp.sql
    select 'select dbms_metadata.get_ddl(''' || trim(object_type) || ''',''' || trim(object_name) || ''',''TESTUSER'') from dual;' from user_object order by object_type;
    spool off
    set heading on
    set feedback on注意生成的这个脚本,是用来得到所有对象的创建语句的,所以有些对象需要删去,如"LOB"对象,另外还要调整对象的顺序,以保证生成时要先生成表,在生成相关的存储过程,函数,以及触发器等.当然这些工作也可以在上面的sql语句中实现。
      

  4.   

    楼上的先生,你这段SQL语法我无法执行,能不能写详细点
      

  5.   

    为什么没法执行?保什么错吗?你的操作系统不是Linux的吧?如果是Linux的,那你要把c:\create_scritp.sql修改为一个Linux下的文件。select 'select dbms_metadata.get_ddl(''' || trim(object_type) || ''',''' || trim(object_name) || ''',''TESTUSER'') from dual;' from user_object order by object_type; 这个语句我执行过,没有问题,其他的语句主要是使用spool时的辅助性设置。