我需要从 oracle 11g(字符集为 AL32UTF8) 中把数据导出,然后导入到数据库 oracle 9i(字符集为 ZHT16MSWIN950) 中去。开始我用 oracle 11g 的客户端 oracle 11g client 导出了一个 dmp 文件,但是用 oracle 11g的客户端再把 dmp 文件导入到 oracle 9i 中去出现必须声明 'set_no_outlines'的错误提示, 用 oracle 9i 的客户端把这个 dmp 文件导入到 oracle 9i 中又提示档案表头没有有通过有效性验证的错误后来查 Google, 说是要用低版本的导出, 于是想用 oracle 9i 的客户端从 oracle 11g 中导出 dmp 文件,但是也提示错误已匯出 ZHT16MSWIN950 字元集和 AL16UTF16 NCHAR 字元集
伺服器使用 AL32UTF8 字元集 (可能的字元集轉換)执行到这后就弹出 window 的错误: EXP.EXE 发生问题,必须关闭有没有碰到过的朋友,请问要怎么解决?急!

解决方案 »

  1.   

    高版本的dmp不能导入到低版本的数据库中
      

  2.   

    我用 9i 的 client 导出来的不是 9i 的dmp 文件吗 ?
      

  3.   


    你这个的问题  不是字符集的问题
    即便字符集一样    问题还是会一样的~  
    并不是说用9i客户端导出的 就是9i的版本dmp,这个和数据源是一致的
      

  4.   

    那 9i 和 11g 不能通过 dmp 文件来进行 exp/imp 了吗?
      

  5.   

    不知道你是不是就只是导出数据就OK 了
        还是导出的数据需要更版本有关。。 
     介绍个工具给你  从10 G 以后有的 数据泵
     impdp /expdp 这个可以写配置文件 导出数据是哪个版本的。。
       
      

  6.   

    我需要把 oracle 11g 的数据导入到 9i 中去数据泵怎么用呢? 9i 用不了吧