IMP-00019:IMP-00003: 遇到 ORACLE 错误 12899 ORA-12899:

    xiaoxiao2021-03-25  82

    导读:GBK与AL32UTF8字符不一致导致,在由ZHS16GBK字符集编码的数据库导出的DMP文件导入到由AL32UTF8字符集编码的数据库时有的表就会提示”字符过长”,导入不成功! 解决办法:

    修改字符集编码。重装数据库,安装时候注意字符集编码的选择。

    我用修改字符集编码方法来操作:

    action==

    C:\Users\Administrator>sqlplus /nolog SQL*Plus: Release 11.2.0.1.0 Production on 星期五 3月 10 10:34:47 2017 Copyright (c) 1982, 2010, Oracle. All rights reserved.

    SQL> conn sys/password as sysdba 已连接。 SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 SQL> startup mount ORACLE 例程已经启动。

    Total System Global Area 1071333376 bytes Fixed Size 1375792 bytes Variable Size 679477712 bytes Database Buffers 385875968 bytes Redo Buffers 4603904 bytes 数据库装载完毕。 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 * 第 1 行出现错误: ORA-12712: 新字符集必须为旧字符集的超集

    SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;

    数据库已更改。

    SQL> select * from v$nls_parameters; 查询表

    SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 SQL> startup ORACLE 例程已经启动。

    Total System Global Area 1071333376 bytes Fixed Size 1375792 bytes Variable Size 679477712 bytes Database Buffers 385875968 bytes Redo Buffers 4603904 bytes 数据库装载完毕。

    数据库已经打开。

    可以了。

    转载请注明原文地址: https://ju.6miu.com/read-19015.html

    最新回复(0)