这是oracle帮助中的信息,看看。
IMP-00037 Character set er unknownCause: The export file is corrupted.Action: Try to obtain an uncorrupted version of the export file. If the export file is not corrupted, report this as an Import internal error and submit the export file to Oracle Customer Support.

解决方案 »

  1.   

    你查看下以前的帖子,有修改字符级的
    要修改注册表和数据库,然后重新启动数据库
    参考下
      http://expert.csdn.net/Expert/topic/1844/1844465.xml?temp=.4618647
      

  2.   

    抱歉,上面我说错了,是可以改的,我看的那本参考书有误,现将ORACLE8I的帮助提供给你:
    大意是更改后的字符集必须是现有字符集的超集,才不会造成数据损坏。
    Changing the Character Set After Database Creation
    In some cases, you may wish to change the existing database character set. For instance, you may find that the number of languages that need to be supported in your database have increased. In most cases, you will need to do a full export/import to properly convert all data to the new character set. However, if, and only if, the new character set is a strict superset of the current character set, it is possible to use the ALTER DATABASE CHARACTER SET statement to expedite the change in the database character set. The target character set is a strict superset if and only if each and every codepoint in the source character set is available in the target character set, with the same corresponding codepoint value. For instance, the following migration scenarios can take advantage of the ALTER DATABASE CHARACTER SET statement because US7ASCII is a strict subset of WE8ISO8859P1, ZHS16GBK, and UTF8: Table 3-8 Sample Migration Scenarios 
    Current Character Set 
     New Character Set 
     New Character Set is Strict Superset? 
     
    US7ASCII 
     WE8ISO8859P1 
     Yes 
     
    US7ASCII 
     ZHS16GBK 
     Yes 
     
    US7ASCII 
     UTF8 
     Yes 
     
     Attempting to change the database character set to a character set that is not a strict superset can result in data loss and data corruption. To ensure data integrity, whenever migrating to a new character set that is not a strict superset, you must use export/import. It is essential to do a full backup of the database before using the ALTER DATABASE [NATIONAL] CHARACTER SET statement, since the command cannot be rolled back. The syntax is: ALTER DATABASE [<db_name>] CHARACTER SET <new_character_set>;
    ALTER DATABASE [<db_name>] NATIONAL CHARACTER SET <new_NCHAR_character_set>;
    The database name is optional. The character set name should be specified without quotes, for example: ALTER DATABASE CHARACTER SET WE8ISO8859P1;
    To change the database character set, perform the following steps. Not all of them are absolutely necessary, but they are highly recommended: SQL> SHUTDOWN IMMEDIATE;   -- or NORMAL
        <do a full backup>SQL> STARTUP MOUNT;
    SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
    SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
    SQL> ALTER DATABASE OPEN;
    SQL> ALTER DATABASE CHARACTER SET <new_character_set_name>;
    SQL> SHUTDOWN IMMEDIATE;   -- or NORMAL
    SQL> STARTUP;
    To change the national character set, replace the ALTER DATABASE CHARACTER SET statement with the ALTER DATABASE NATIONAL CHARACTER SET statement. You can issue both statements together if desired.
      

  3.   

    常用的中文字符集就两种吗?
    SIMPLIFIED CHINESE_CHINA.ZHS16GBK
    SIMPLIFIED CHINESE_CHINA.ZHS16CGB231380
    有没有其他的?
      

  4.   

    ORACLE帮助文档,亚洲语言字符集,摘自Oracle8i National Language Support Guide-
    Locale Data。详细信息请自己查Table A-4 Asian Language Character Sets 
    BN8BSCII 
     Bangladesh National Code 8-bit BSCII 
     SB, ASCII 
     
    ZHT16BIG5 
     BIG5 16-bit Traditional Chinese 
     MB, ASCII 
     
    ZHS16CGB231280 
     CGB2312-80 16-bit Simplified Chinese 
     MB, ASCII 
     
    JA16EUC 
     EUC 24-bit Japanese 
     MB, ASCII 
     
    JA16EUCYEN 
     EUC 24-bit Japanese with '\' mapped to the Japanese yen character 
     MB 
     
    JA16EUCFIXED 
     EUC 16-bit Japanese. A fixed-width subset of JA16EUC (contains only the 2-byte characters of JA16EUC). Contains no 7- or 8-bit ASCII characters 
     FIXED 
     
    ZHT32EUC 
     EUC 32-bit Traditional Chinese 
     MB, ASCII 
     
    ZHT32EUCFIXED 
     EUC 32-bit Traditional Chinese (32-bit fixed-width, no single byte) 
     FIXED 
     
    ZHS16GBK 
     GBK 16-bit Simplified Chinese 
     MB, ASCII, UDC 
     
    ZHS16GBKFIXED 
     GBK 16-bit Simplified Chinese (16-bit fixed-width, no single byte) 
     FIXED, UDC 
     
    ZHT16CCDC 
     HP CCDC 16-bit Traditional Chinese 
     MB, ASCII 
     
    JA16DBCS 
     IBM EBCDIC 16-bit Japanese 
     MB, UDC 
     
    JA16EBCDIC930 
     IBM DBCS Code Page 290 16-bit Japanese 
     MB, UDC 
     
    JA16DBCSFIXED 
     IBM EBCDIC 16-bit Japanese (16-bit fixed width, no single byte) 
     FIXED, UDC 
     
    KO16DBCS 
     IBM EBCDIC 16-bit Korean 
     MB, UDC 
     
    KO16DBCSFIXED 
     IBM EBCDIC 16-bit Korean (16-bit fixed-width, no single byte) 
     FIXED, UDC 
     
    ZHS16DBCS 
     IBM EBCDIC 16-bit Simplified Chinese 
     MB, UDC 
     
    ZHS16CGB231280
    FIXED 
     CGB2312-80 16-bit Simplified Chinese (16-bit fixed-width, no single byte) 
     FIXED 
     
    ZHS16DBCSFIXED 
     IBM EBCDIC 16-bit Simplified Chinese (16-bit fixed-width, no single byte) 
     FIXED, UDC 
     
    ZHT16DBCS 
     IBM EBCDIC 16-bit Traditional Chinese 
     MB, UDC 
     
    ZHT16DBCSFIXED 
     IBM EBCDIC 16-bit Traditional Chinese (16-bit fixed-width, no single byte) 
     FIXED 
     
    KO16KSC5601 
     KSC5601 16-bit Korean 
     MB, ASCII 
     
    KO16KSCCS 
     KSCCS 16-bit Korean 
     MB, ASCII 
     
    KO16KSC5601FIXED 
     KSC5601 (16-bit fixed-width, no single byte) 
     FIXED 
     
    JA16VMS 
     JVMS 16-bit Japanese 
     MB, ASCII 
     
    ZHS16MACCGB231280 
     Mac client CGB2312-80 16-bit Simplified Chinese 
     MB 
     
    JA16MACSJIS 
     Mac client Shift-JIS 16-bit Japanese 
     MB 
     
    TH8MACTHAI 
     Mac Client 8-bit Latin/Thai 
     SB 
     
    TH8MACTHAIS 
     Mac Server 8-bit Latin/Thai 
     SB, ASCII 
     
    TH8TISEBCDICS 
     Thai Industrial Standard 620-2533-EBCDIC Server 8-bit 
     SB 
     
    ZHT16MSWIN950 
     MS Windows Code Page 950 Traditional Chinese 
     MB, ASCII, UDC 
     
    KO16MSWIN949 
     MS Windows Code Page 949 Korean 
     MB, ASCII, UDC 
     
    VN8MSWIN1258 
     MS Windows Code Page 1258 8-bit Vietnamese 
     SB, ASCII, EURO 
     
    IN8ISCII 
     Multiple-Script Indian Standard 8-bit Latin/Indian 
    Languages 
     SB, ASCII 
     
    JA16SJIS 
     Shift-JIS 16-bit Japanese 
     MB, ASCII, UDC 
     
    JA16SJISFIXED 
     Shift-JIS 16-bit Japanese. A fixed-width subset of JA16SJIS (contains only the 2-byte characters of JA16JIS). Contains no 7- or 8-bit ASCII characters 
     FIXED, UDC 
     
    JA16SJISYEN 
     Shift-JIS 16-bit Japanese with '\' mapped to the Japanese yen character 
     MB, UDC 
     
    ZHT32SOPS 
     SOPS 32-bit Traditional Chinese 
     MB, ASCII 
     
    ZHT16DBT 
     Taiwan Taxation 16-bit Traditional Chinese 
     MB, ASCII 
     
    ZHT16BIG5FIXED 
     BIG5 16-bit Traditional Chinese (16-bit fixed-width, no single byte) 
     FIXED 
     
    TH8TISASCII 
     Thai Industrial Standard 620-2533 - ASCII 8-bit 
     SB, ASCII, EURO 
     
    TH8TISEBCDIC 
     Thai Industrial Standard 620-2533 - EBCDIC 8-bit 
     SB 
     
    ZHT32TRIS 
     TRIS 32-bit Traditional Chinese 
     MB, ASCII 
     
    ZHT32TRISFIXED 
     TRIS 32-bit Fixed-width Traditional Chinese 
     FIXED 
     
      

  5.   

    常用的中文字符集就这两种:
    SIMPLIFIED CHINESE_CHINA.ZHS16GBK
    SIMPLIFIED CHINESE_CHINA.ZHS16CGB231380
    我建议使用前者,他支持的汉子很多,足可以满足需要,理论上SIMPLIFIED CHINESE_CHINA.ZHS16GBK 是 SIMPLIFIED CHINESE_CHINA.ZHS16CGB231380 的超集,但是
    oracle不这么认为,所以不能使用 alter database 命令进行升级,如果你一定要从ZHS16CGB231380 升级到 ZHS16GBK 的话,我也有方法,是修改一些数据库的数据字典,
    不过这种方法没有得到oracle官方的认可,我已经升级过很多次了,没有出现任何问题,
    如果你有这个方面的需要,可以发 Email 给我:[email protected]
      

  6.   

    to wxdsun(影子):常用的就这两种,那前面我从ORACLE帮助文档中摘出的字符集中那些中文字符集都是做啥用的,能给解释一下吗,我一直弄不太明白。
      

  7.   

    我说的是常用了的,因为这两个都是用国标的,符合国家的标准,并且windows 从 95 开始到现在都在使用 ZHS16GBK 这个字符集,可以说是大部分中文用户都在使用这个字符集。还有一点,不要使用定长的字符集(带FIXED后缀的)会产生兼容性的问题。
    ZHS16GBK 这个字符集是一个过渡性的国家标准,但是现在已经非常流行了,主要是windows一直在使用,现在最新的标准是GB 18030-2000 ,但是现在oracle好像不支持,起码8i还不支持。所以使用 ZHS16GBK 是最好的选择。
      

  8.   

    兼容的参数选择8.1.0,防止出现兼容性问题;
    字符集选择“AMERICAN_AMERICA.US7ASCII”;
      

  9.   

    备份文件可能不是一个有效的exp文件.
      

  10.   

    谢谢各位的帮助
    几种办法我也试了,我现在也怀疑这个备份文件有问题,也许不是exp出来的
    我现在还没有确定。