主题 : ora12899 字段 超长问题 |
级别: 商业授权用户
|
1# 发表于:2013-09-02 11:19:47 IP:211.74.*.*
|
||||
---|---|---|---|---|---|
级别: 状元
|
2# 发表于:2013-09-02 11:36:58 IP:115.168.*.*
初步断定是字符集问题,中文在 UTF-8 里占 3 个字节, ZHS16GBK 里占 2 个字节 , 而源 dmp 文件字符集是 ZHS16GBK 的库到出来的,现在要导入到目标字符集为 UFT-8 的库里。 修改 oracle 10g 的字符集 Oracle 修改数据库字符集为: ZHS16GBK 查看服务器端字符集 SQL > select * from V$NLS_PARAMETERS 修改: $sqlplus /nolog SQL>conn / as sysdba SQL>SHUTDOWN IMMEDIATE SQL>STARTUP MOUNT SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION; SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0; SQL>ALTER DATABASE OPEN; SQL> ALTER DATABASE CHARACTER SET ZHS16GBK ALTER DATABASE CHARACTER SET ZHS16GBK *ERROR at line 1: ORA-12712: new character set must be a superset of old character set 报字符集不兼容,此时下 INTERNAL_USE 指令不对字符集超集进行检查: SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK; SQL>SHUTDOWN IMMEDIATE SQL>STARTUP 再次用 imp 导入,就没有问题了。
|
||
---|---|---|---|
1
共1页