在plsql工具中,从一个库A分别导出dmp和sql后缀的两个文件。将其导入到库B中,1、使用dmp文件可以直接通过PLSQL的导入工具或使用cmd命令行输入imp指令导入到库B中。2、sql文件如果使用PLSQL导入工具中的SQL*Plus Executable选项或使用cmd命令行imp test/test@testb tables=tbl_test file=D:\data\test.sql ignore=y,则提示:
IMP-00037: 未知字符集标记
IMP-00000: 未成功终止导入但sql文件使用PLSQL导入工具中的Command Window方式可以导入。请问这是什么问题?谢谢!

解决方案 »

  1.   

    使用命令行:
    导入 :imp test/test@testb file=文件路径/文件名.dmp full=y
    导出: exp test/test@testb file=文件路径/文件名.dmp
      

  2.   


    那为啥sql文件在PLSQL中使用SQL*Plus Executable不能导入呢?
      

  3.   

    你具体是怎么做的?
    IMP-00037: 未知字符集标记
      

  4.   

    你在sqlplus里面也可以import
    导入 :imp test/test@testb file=XXX/XXX.dmp full=y
    导出: exp test/test@testb file=XXX/XXX.dmp
      

  5.   

    这是PLSQL中的截屏,将一个.sql文件导入执行IMPORT后就提示
    IMP-00037: 未知字符集标记
    IMP-00000: 未成功终止导入
      

  6.   

    你导出的SQL文件有可能就是 create table 和insert 之类的语句,你先打开看看是不是,若是的话,直接执行这个文件就可以了。
      

  7.   


    是这些语句,但为什么使用PLSQL中的SQL*Plus就不行呢?
      

  8.   

    见过dmp可以导入但sql导不进的情况。
    但是SQL*Plus不能导、SQL Windows可以导的没见过。
    标记下。
      

  9.   

     导入后 加上 ignore=y ,可以忽略,直接导入。