`

修改 Oracle10g 数据库字符集的方法

阅读更多

 

修改oracle10g数据库字符集的方法:

 

 

----------------------------------------------------------------------------------------------------

 

SQL> select name,value$ from props$ where name like '%NLS%';

 

 

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

 

SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk;

 

SQL> select value from nls_database_parameters where parameter='NLS_CHARACTERSET';

 

 

 

 

oracle数据库在导入不同字符集的数据时经常会出现以下类似问题:

 

IMP-00017: following statement failed with ORACLE error 2299:

"ALTER TABLE "TMPUSERINFO" ADD UNIQUE ("MDN") USING INDEX PCTFREE 10 INITRA"

"NS 2 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABL"

"ESPACE "JLTGAME" LOGGING ENABLE"

IMP-00003: ORACLE error 2299 encountered

ORA-02299: cannot validate (JLTGAME.SYS_C003199) - duplicate keys found

IMP-00017: following statement failed with ORACLE error 2299:

"ALTER TABLE "TMPUSERINFO" ADD UNIQUE ("USERNAME") USING INDEX PCTFREE 10 I"

"NITRANS 2 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1)"

" TABLESPACE "JLTGAME" LOGGING ENABLE"

IMP-00003: ORACLE error 2299 encountered

ORA-02299: cannot validate (JLTGAME.SYS_C003200) - duplicate keys found

 

----------------------------------------------------------------------------------------------------

 

 

 

 

解决办法:修改数据库字符集

 

----------------------------------------------------------------------------------------------------

重点:ALTER DATABASE character set INTERNAL_USE zhs16gbk;  # 使用INTERNAL_USE可以跳过超集的检查,

----------------------------------------------------------------------------------------------------

 

 

SQL> connect sys/test123@szdb as sysdba;

Connected to an idle instance.

SQL> startup 

ORACLE instance started.

 

Total System Global Area 235999352 bytes

Fixed Size 450680 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

Database mounted.

Database opened.

SQL> select name,value$ from props$ where name like '%NLS%';

 

NAME

------------------------------------------------------------

VALUE$

--------------------------------------------------------------------------------

NLS_LANGUAGE

AMERICAN

 

NLS_TERRITORY

AMERICA

 

NLS_CURRENCY

$

 

 

NAME

------------------------------------------------------------

VALUE$

--------------------------------------------------------------------------------

NLS_ISO_CURRENCY

AMERICA

 

NLS_NUMERIC_CHARACTERS

.,

 

NLS_CHARACTERSET

WE8ISO8859P1

 

 

NAME

------------------------------------------------------------

VALUE$

--------------------------------------------------------------------------------

NLS_CALENDAR

GREGORIAN

 

NLS_DATE_FORMAT

DD-MON-RR

 

NLS_DATE_LANGUAGE

AMERICAN

 

 

NAME

------------------------------------------------------------

VALUE$

--------------------------------------------------------------------------------

NLS_SORT

BINARY

 

NLS_TIME_FORMAT

HH.MI.SSXFF AM

 

NLS_TIMESTAMP_FORMAT

DD-MON-RR HH.MI.SSXFF AM

 

 

NAME

------------------------------------------------------------

VALUE$

--------------------------------------------------------------------------------

NLS_TIME_TZ_FORMAT

HH.MI.SSXFF AM TZR

 

NLS_TIMESTAMP_TZ_FORMAT

DD-MON-RR HH.MI.SSXFF AM TZR

 

NLS_DUAL_CURRENCY

$

 

 

NAME

------------------------------------------------------------

VALUE$

--------------------------------------------------------------------------------

NLS_COMP

BINARY

 

NLS_LENGTH_SEMANTICS

BYTE

 

NLS_NCHAR_CONV_EXCP

FALSE

 

 

NAME

------------------------------------------------------------

VALUE$

--------------------------------------------------------------------------------

NLS_NCHAR_CHARACTERSET

AL16UTF16

 

NLS_RDBMS_VERSION

9.2.0.1.0

 

 

20 rows selected.

 

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

 

Total System Global Area 235999352 bytes

Fixed Size 450680 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

Database mounted.

SQL> alter session set sql_trace=true;

 

Session altered.

 

SQL> alter system enable restricted session;

 

System altered.

 

SQL> alter system set job_queue_processes=0;

 

System altered.

 

SQL> alter system set aq_tm_processes=0;

 

System altered.

 

SQL> alter database open;

 

Database altered.

 

SQL> set linesize 120;

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

 

SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk;  # 使用INTERNAL_USE可以跳过超集的检查,ALTER DATABASE character set INTERNAL_USE 

 

Database altered.

 

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> STARTUP

ORACLE instance started.

 

Total System Global Area 235999352 bytes

Fixed Size 450680 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

Database mounted.

Database opened.

SQL> 

SQL> select name,value$ from props$ where name like '%NLS%';

 

NAME

------------------------------

VALUE$

------------------------------------------------------------------------------------------------------------------------

NLS_LANGUAGE

AMERICAN

 

NLS_TERRITORY

AMERICA

 

NLS_CURRENCY

$

 

 

NAME

------------------------------

VALUE$

------------------------------------------------------------------------------------------------------------------------

NLS_ISO_CURRENCY

AMERICA

 

NLS_NUMERIC_CHARACTERS

.,

 

NLS_CHARACTERSET

ZHS16GBK

 

 

NAME

------------------------------

VALUE$

------------------------------------------------------------------------------------------------------------------------

NLS_CALENDAR

GREGORIAN

 

NLS_DATE_FORMAT

DD-MON-RR

 

NLS_DATE_LANGUAGE

AMERICAN

 

 

NAME

------------------------------

VALUE$

------------------------------------------------------------------------------------------------------------------------

NLS_SORT

BINARY

 

NLS_TIME_FORMAT

HH.MI.SSXFF AM

 

NLS_TIMESTAMP_FORMAT

DD-MON-RR HH.MI.SSXFF AM

 

 

NAME

------------------------------

VALUE$

------------------------------------------------------------------------------------------------------------------------

NLS_TIME_TZ_FORMAT

HH.MI.SSXFF AM TZR

 

NLS_TIMESTAMP_TZ_FORMAT

DD-MON-RR HH.MI.SSXFF AM TZR

 

NLS_DUAL_CURRENCY

$

 

 

NAME

------------------------------

VALUE$

------------------------------------------------------------------------------------------------------------------------

NLS_COMP

BINARY

 

NLS_LENGTH_SEMANTICS

BYTE

 

NLS_NCHAR_CONV_EXCP

FALSE

 

 

NAME

------------------------------

VALUE$

------------------------------------------------------------------------------------------------------------------------

NLS_NCHAR_CHARACTERSET

AL16UTF16

 

NLS_RDBMS_VERSION

9.2.0.1.0

 

 

20 rows selected.

 

 

SQL> 

 

----------------------------------------------------------------------------------------------------

 

分享到:
评论

相关推荐

    修改Oracle数据库字符集的方法

    修改Oracle数据库字符集的命令行方法。 在Oracle10g上也可以使用

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK .

    oracle修改字符集

    oracle11g 修改字符集 修改为ZHS16GBK 有时候因为数据库的字符集的问题,导致dmp文件不能正常导入到其他数据库。可以用下面的方法将数据库的字符集修改一下

    oracle 10g xe 版本更改数据库字符集

    根据网上资料整理,经多次实验,可用。扣10分是多了点,没办法,哈哈,挣点钱啊。忘大家多多照顾。

    修改oracle的字符集

    修改oracle的字符集,即默认的字符集,有时候可能字符集不符合一些要求,通过该步骤即可修改

    Oracle11g从入门到精通2

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    Oracle 10g应用指导

    第10章 数据库管理,包括导出数据库模式的DDL脚本,管理Oracle数据库实例的方法、数据恢复与Flashback以及更改数据库字符集等具体方法。第11章 数据库的安全管理。包括加密Oracle子程序,存储应用程序用户名和口令,...

    修改Oracle字符集(character set)

    本方法适用于Oracle9i, 10g以及XE. 在10.2.0.1.0下测试无错. 需要注意的是, 使用此方法会破坏数据库中的原有双字节字符. 一种办法是先将数据库导出, 修改完字符集后再导入; 另一种办法就是不管他, 就那样使用. 一般...

    Oracle 从入门到精通视频教程(11G版本)(ppt)

    第1章-Oracle 11g数据库简介 认识Oracle 11g 回忆Oracle的产品版本 学习Oracle 11g的新特性 第2章-Oracle 11g的安装与测试 能够使用Oracle 11g的基本条件 在Windows 2003上安装Oracle 11g 移除Oracle 11g ...

    Oracle11g从入门到精通

    《Oracle11g从入门到精通》面向数据库管理人员和数据库开发人员,从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用...

    Oracle+10g应用指导与案例精讲

    第10章 数据库管理,包括导出数据库模式的DDL脚本,管理Oracle数据库实例的方法、数据恢复与Flashback以及更改数据库字符集等具体方法。第11章 数据库的安全管理。包括加密Oracle子程序,存储应用程序用户名和口令,...

    Oracle数据库服务器修改操作系统时间的注意事项详解

    推荐:安装oracle10g时候注意事项&修改oracle数据库字符集编码 [安装oracle10g时候注意事项:1. 关闭网络连接2.……修改oracle数据库字符集编码:先用system和密码登陆SQLPLUS,然后:1.用sys登录到oracle中 connect...

    ORACLE11G宝典.rar 是光盘里面的内容,书太厚咧没法影印啊

     4.2.2 语言字符集、常用符号  4.2.3 常量与变量  4.2.4 数据类型  4.2.5 集合API方法  4.3 流程控制  4.3.1条件控制  4.3.2 循环控制  4.3.3 顺序控制  4.4 游标  4.4.1显式游标  4.4.2 隐式...

    赤兔Oracle数据库恢复软件 v11.6.zip

    27.支持多种字符集之间的转换,能够正确的转换CLOB、NCLOB、NVARCHAR2列类型的数据到指定的字符集。 28.自动检测数据文件的表空间号和文件号 29.导出的数据格式包括纯文本和DMP文件两种。以纯文本导出时,能够自动...

    linux 下修改字符集的问题

    当装完oracle11g由于当时装的匆忙发现数据库的编码不对,显示编码为AL32UTF,要想显示中文需要改成ZHS16GBK.

    oracle数据库设计规范.doc

    数据库字符集选择 为了使数据库能够正确支持多国语言,必须配置合适的数据库字符集,采用UTF8 字符集。 数据库其他参数配置 DB_FILES Db_files是数据库能够同时打开的文件数量,默认值是200个。当数据库规划时文 件...

    Oracle.11g.从入门到精通 (2/2)

    4.1.3 PL/SQL字符集 4.1.4 PL/SQL数据类型 4.1.5 PIJSQL变量和常量 4.1.6 PL/SQL语句控制结构 4.1.7 PL/SQL表达式 4.2 PL/SQL的游标 4.2.1 基本原理 4.2.2 显式游标 4.2.3 隐式游标 4.2.4 游标属性 4.2.5 游标变量 ...

    Oracle.11g.从入门到精通 (1/2)

    4.1.3 PL/SQL字符集 4.1.4 PL/SQL数据类型 4.1.5 PIJSQL变量和常量 4.1.6 PL/SQL语句控制结构 4.1.7 PL/SQL表达式 4.2 PL/SQL的游标 4.2.1 基本原理 4.2.2 显式游标 4.2.3 隐式游标 4.2.4 游标属性 4.2.5 游标变量 ...

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)--详细书签版(第2/2部分)

     Bob Bryla是Oracle 9i和10g的认证专家,他在数据库设计、数据库应用程序开发、培训和Oracle数据库管理等方面拥有20多年的工作经验,他也足Dodgeville的Land'End公司的首席Internet数据库设计师和Oracle DBA. ...

    oracle biee 11g 中文安装文档

    1.数据库要求在Oracle Database 11g Enterprise Edition Release 10.2.0.4.0以上的版本(字符集为UTF8)。 2.安装Oracle Repository Creation Utility 11.1.1.3.3。 1.2 安装 Oracle Repository Creation Utility ...

Global site tag (gtag.js) - Google Analytics