`

10g以后Oracle不支持ZHS32GB18030[转]

阅读更多
在9i中Oracle存在字符集ZHS32GB18030,而10g以后,这个字符集在安装数据库的时候已经不可选了。




由于客户的环境需要输入大量的生僻字,要求客户端采用GB18030编码,这使得数据库无法使用ZHS16GBK字符集。

查询了一下字符编码方面的资料,最早推出的GB2312-80编码,包含了大约6000多个汉字,而对应的Oracle字符集编码为ZHS16CGB231280。这6000多个汉字对应日常应用足够,但是稍微生僻一些的汉字就无法在系统中显示。

此后推出了GBK编码,所支持的汉字超过了20000,这对于大部分情况来说足够使用了,其对应的Oracle数据库字符集就是中文中最常用的ZHS16GBK。GBK包含的所有GB2312编码中的汉字,但是二者并非严格意义上的超集关系。

在2000年的时候,出现了GB18030编码,它使用4位字符编码,因此覆盖的汉字达到了60000以上,这时GB18030中编码符合UNICODE 3.0。到2005年的时候,GB18030-2005又收录了一些新的汉字或图形,这时符合UNICODE 4.0编码。在Oracle9i中,存在字符集ZHS32GB18030,对于GB18030编码,但是从10g开始,数据库字符集不再支持ZHS32GB18030字符集了。虽然包括metalink在内介绍了先创建US7ASCII字符集在通过修改数据库字符集的方法将数据库字符集转化为ZHS32GB18030,但是这种方法毕竟不是官方推荐的方法,如果说10g的数据库安装过程中不能选择ZHS32GB18030字符集,是Oracle漏掉了这个字符集,那么在11.2中,同样无法选择这个字符集,就明确说明了Oracle的态度了。事实上,从10g开始,ZHS32GB18030变为客户端字符集,而数据库中之所以还可以创建这个字符集,是Oracle为了后向兼容性,确保9i中ZHS32GB18030字符集的数据库可以顺利的升级。

10g中不再支持ZHS32GB18030字符集,因此Oracle建议用户更改字符集为AL32UTF8或UTF8字符集,详细文档可以参考ID 1144903.1。不过在11.2中UTF8同样是不推荐的字符集之一,那么如果需要在客户端使用GB18030编码,那么推荐使用AL32UTF8字符集。如果客户端使用GB18030-2000编码,那么可以在数据库中选择AL32UTF8字符集,而客户端字符集选择ZHS32GB18030,所有的客户端字符都可以顺利的保存到服务器端或从服务器端读取。如果客户端选择GB18030-2005编码,那么没有专门的客户端字符集与之对应,因此客户端应该与数据库保持一致,都选择AL32UTF8字符集。
分享到:
评论

相关推荐

    Oracle字符集的问题.docx

    Oracle字符集的问题.总结了一些项目中的实际问题,和解决办法

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK

    Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK .

    [Oracle] 彻底搞懂Oracle字符集

    基本概念字符集(Character set):是一个系统支持的所有抽象字符的...与字符集相对应,常见的字符编码有:ASCii,ZHS16GBK,ZHT16BIG5,ZHS32GB18030等。字符集的定义其实就是字符的集合,而字符编码则是指怎么将这

    oracle库字符集ZHS16GBK到AL32UTF8的分析研究及方案

    个人工作总结,仅供参考。oracle库字符集ZHS16GBK到AL32UTF8的分析研究及方案,原因是系统使用中支持维文的显示。

    Linux 下修改Oracle 10G的字符集:WE8ISO8859P1 修改为 ZHS16GBK

    Linux 下修改Oracle 10G的字符集:WE8ISO8859P1 修改为 ZHS16GBK 在我的机器上试过了,非常有效! //测试oracle 10g别的版本没试不敢保证

    oracle10-11g oci.dll

    1、适用于navicat等连接oracle所需工具包,包含orcale10g 11g; 2、不用本地安装oracle客户端 ,直接远程连接oracle; 3、解决报错ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

    java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK

    java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK ……

    修改oracle字符集 将原al32utf8修改为zhs16gbk

    案例:从Linux导出的数据导入到windows环境中发现字符集安装时候忘了修改为zhs16gbk(是原来的al32utf8)。

    Oracle 字符集详解

    Oracle 字符集详解,包括查看,修改,导入导出,转换原理

    oracle即时客户端 64位 10g

    之前一直都是用eclipse自带的Data Source Explorer访问Oracle数据库,可是只能简单地查看,而且很多字段不兼容。 今天开始使用PLSQL Developer连接远程Oracle数据库的时候,提示我没有安装Oracle客户端,才知道PLSQL...

    oracle 11g环境变量配置

    oracle 11g环境变量配置 添加一个环境变量, 名为TNS_ADMIN, 值为tnsnames.ora文件所在路径。 比如我的本机为:D:\instantclient_11_2\network\admin 4、设置ORACLE的语言,添加环境变量NLS_LANG ,值为SIMPLIFIED ...

    oracle 11g免安装版

    E:\app\instantclient_11_2 在工具-首选项,连接,OCI库输入 e:\app\instantclient_11_2\oci.dll 添加环境变量 系统变量中添加2个: 第一个是指向TNS文件所在目录的,这个目录是你安装的64位版本Oracle的TNS文件所在...

    Oracle Instant Client 11.2.0.1.0 轻量级Oracle客户端

    Oracle Instant Client 11.2.0.1.0是轻量级Oracle客户端,用于连接访问Oracle 9i、10g、11g 11.2.0.1.0版本的Oracle数据库。 Oracle Instant Client11.2.0.1.0 安装程序包含OCI/ OCCI、JDBC-OCI SDK(软件开发工具...

    oraclejdbc驱动

    它包含 JDBC 驱动程序类,但不包含在 Oracle Object 和 Collection 类型中支持 NLS 的类。 ojdbc5_g.jar (3,081,328 字节)— 与 ojdbc5.jar 一样,除了类通过“javac -g”编译并包含跟踪代码。 ojdbc6.jar (2,...

    oracle即时客户端 64位 11g

    之前一直都是用eclipse自带的Data Source Explorer访问Oracle数据库,可是只能简单地查看,而且很多字段不兼容。 今天开始使用PLSQL Developer连接远程Oracle数据库的时候,提示我没有安装Oracle客户端,才知道PLSQL...

    oracleXE字符集改成GBK

    Oracle 10g Express Edition是Oracle专门为小型用户提供的免费版本。Oracle XE十分小巧,安装简单,可供第三方软件开发商部署较小的应用。  不过Oracle XE目前的beta2缺省安装的字符集是WE8MSWIN1252,不是中文...

    twp-oracle-database-in-memory-2245633-zhs.pdf

    Oracle Database 18c 中的 Oracle Database In-Memory Oracle Database 18c 中的 Oracle Database In-Memory

    Oracle_instant_client_10_2

    1、配置环境变量(以下C:\Oracle_instant_client_10_2为下载的解压路径) 系统变量:新建 变量名:NLS_LANG 变量:NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 新建 变量名:TNS_ADMIN 变量值:C:\Oracle_instant_client_10_2 ...

    修改ORACLE11G字符集

    文中详细描述了如何修改ORACLE11G字符集的方法和步骤

    oracle 11G 免安装客户端精简版

    完整的路径是D:\oracle_client\instantclient10_1 设置环境变量 a.在系统环境变量Path添加D:\oracle_client\instantclient10_1 b.并添加如下环境变量: LD_LIBRARY_PATH=D:\oracle_client\instantclient10_1 NLS_...

Global site tag (gtag.js) - Google Analytics