在用imp命令加载数据前,先在客户端用sql*plus登录system DBA用户,执行下列SQL语句,把ORACLE数据库字符集修改你的8.1.6库的字符集。
例:
SQL > create database character set US7ASCII
* create database character set US7ASCII
ERROR at line 1:
ORA-01031: insufficient privileges 你会发现语句执行过程中,出现上述错误提示信息,此时不用理会,实际上ORACLE数据库的字符集已被强行修改为US7ASCII,接着用imp命令装载数据。等数据装载完成以后,shutdown 数据库,再startup 数据库,用合法用户登录ORACLE数据库,在sql>命令提示符下,运行select * from V$NLS_PARAMETERS,可以看到ORACLE8.1.7数据库字符集已复原.
例:
SQL > create database character set US7ASCII
* create database character set US7ASCII
ERROR at line 1:
ORA-01031: insufficient privileges 你会发现语句执行过程中,出现上述错误提示信息,此时不用理会,实际上ORACLE数据库的字符集已被强行修改为US7ASCII,接着用imp命令装载数据。等数据装载完成以后,shutdown 数据库,再startup 数据库,用合法用户登录ORACLE数据库,在sql>命令提示符下,运行select * from V$NLS_PARAMETERS,可以看到ORACLE8.1.7数据库字符集已复原.
反之,就会出现问题,有些就无法正常显示。
不知道你说的“字符集转换问题”的症状是什么?
现在两边数据库的NLS——LANG = AMERICAN_AMERICA.ZHS16CGB231280
而且在props$中查看也基本一致,但我现在出现的错误是:IMP-00069: Could not convert to environment national character set's handle
IMP-00000: Import terminated unsuccessfully