字符集总结:

一、服务器的字符集(用来存储数据用的编码格式)

二、操作系统字符集(用来显示、解码/编码与oracle交互的编码格式)

三、oracle客户端字符集(用于转换操作系统、服务器端编码/解码格式问题)

一、服务器的字符集(用来存储数据用的编码格式)

编码字符集包含关系:ZHS32GB18030 > ZHS16GBK > ZHS16CGB231280 参考文章:http://docs.oracle.com/cd/B10501_01/server.920/a96529/appa.htm#956722

oracle 支持的字符集:

在 oracle 官方文档中提到支持以下中文字符集:

ZHS16CGB231280  CGB2312-80 16-bit Simplified Chinese  -- 11g 已不支持

ZHS16GBK        GBK 16-bit Simplified Chinese

ZHS32GB18030    GB18030-2000                          -- 11g 已不支持

ZHT16BIG5       BIG5 16-bit Traditional Chinese       -- 11g 已不支持

ZHT32EUC        EUC 32-bit Traditional Chinese

ZHT16HKSCS      MS Windows Code Page 950 with Hong Kong Supplementary Character Set

ZHT16MSWIN950   MS Windows Code Page 950 Traditional Chinese

而我在11g创建 DB 时,选项中只支持以下几种中文字符集:

ZHS16GBK        GBK 16-bit Simplified Chinese    -- 我们中国大陆只能选它了...

ZHT16HKSCS      MS Windows Code Page 950 with Hong Kong Supplementary Character Set

ZHT16MSWIN950   MS Windows Code Page 950 Traditional Chinese

ZHT32EUC        EUC 32-bit Traditional Chinese

AL32UTF8        Unicode 4.0 UTF-8 Universal character set    --  实验时,使用的是字符集,证明可以存储 ZHS16GBK 以外的字符集

二、操作系统字符集(用来显示、解码/编码与oracle交互的编码格式)

linux命令下:

locale -a                -- 查看操作系统支持哪些字符集;

locale charmap           -- 看操作系统的字符解码是哪种方式;

export LANG=zh_CN.UTF-8  -- 设置操作系统 为 中文,utf8编码方式

三、oracle客户端字符集(用于转换操作系统、服务器端编码/解码格式问题)

linux命令下:

export NLS_LANG='SIMPLIFIED CHINESE_CHINA.AL32UTF8'  -- 设置 语言:简体中文   区域:中国  编码:utf8

实验:

测试字符(以下字符都不在GBK字符范围内):

一、 gbk字符集的情况下

条件:

服务器端oracle的字符集:ZHS16GBK

linux终端环境变量设置 LANG:export LANG="zh_CN.GB18030"

linux终端环境变量设置 NLS_LANG: export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS32GB18030"

CREATE TABLE TST_CHARACTER

(

F1 NVARCHAR2(8)

);

结果:

一、sqlplus中试验

1.  INSERT INTO TST_CHARACTER values('

');  -- 成功

select * from TST_CHARACTER ;            -- 失败,乱码;

F1

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

??

select * from TST_CHARACTER where F1='

'  -- 查询成功,但是乱码;

二、P/L SQL Developer 8.0 版本试验

1. select * from TST_CHARACTER for update;    -- 使用把

拷贝进去,成功显示, 但是不能使用where 条件查询;

select * from TST_CHARACTER where F1='

'  -- 查询不成功;

select * from TST_CHARACTER                -- 能显示 '

' 字

二、 AL32UTF8 字符集的情况下

条件:

服务器端oracle的字符集: AL32UTF8

linux终端环境变量设置 LANG:export LANG="zh_CN.UTF-8"

linux终端环境变量设置 NLS_LANG: export NLS_LANG='SIMPLIFIED CHINESE_CHINA.AL32UTF8'

CREATE TABLE TST_CHARACTER

(

F1 NVARCHAR2(8)

);

结果:

一、sqlplus中试验

SQL> INSERT INTO TST_CHARACTER values('

');  -- 成功

SQL> select * from tst_character;             -- 失败,乱码;

F1

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

��

SQL> select * from TST_CHARACTER where F1='

' ;  -- 成功,但显示为乱码;

二、P/L SQL Developer 8.0 版本试验

INSERT INTO TST_CHARACTER values('

') ;     -- 成功

commit;

select * from TST_CHARACTER   -- 失败,乱码;

select * from TST_CHARACTER  where F1='

' for update;   -- 成功找到数据,但显示为乱码;

直到现在,还没有找到一种方法可以正确存入,并能条件查询,并正确反显的。。。。。。。。。

有时间再搞,得睡了。。。。。

以上如果有哪位大虾能帮解决一下么,谢谢啦 ~!~

oracle gbk 无法识别,oracle 字符集总结(超出GBK范围的字符存取问题未解决)相关推荐

  1. linux7.0安装oracle乱码,Oracle Linux 7设置中文字符集

    常安装Linux系统本着最简化安装,会默认使用英文字符集,不会安装中文字符集等其他字符.但是在一些必要情况下需要中文的支持,本文将演示如何在Oracle Linux7在安装中文字符集 1.首先使用lo ...

  2. zhs16gbk对应mysql_[Oracle] 彻底搞懂Oracle字符集

    基本概念字符集(Character set):是一个系统支持的所有抽象字符的集合.字符是各种文字和符号的总称,包括各国家文字.标点符号.图形符号.数字等.常见的字符集有ASCII,ZHS16GB231 ...

  3. oracle查看编码格式以及修改字符集编码

    oracle查看编码格式以及修改字符集编码 查看oracle数据库的编码集     客户端字符集环境select   *   from   nls_instance_parameter,其来源于v$p ...

  4. oracle 输出重复记录,ORACLE 去除重复记录

    ORACLE 去除重复记录 delete from tbl_talbe where (col1,col2,col3) in (select col1,col2,col3 from tbl_table ...

  5. oracle stalestats_深入理解oracle优化器统计数据(Optimizer Statistics)

    理解oracle优化器统计数据 首先来介绍oracle数据库使用基于规则优化器(RBO)来决定如何执行一个sql语句.基于规则优化器顾名思义,它是遵循一组规则来判断一个sql语句的执行计划.这组规则是 ...

  6. oracle ko16mswin949,PRM DUL Oracle数据库恢复的最后一步

    PRM-DUL是一种Oracle数据抽取工具(data unloader for Oracle),其具备跳过Oracle数据库引擎,直接从块级别抽取数据行的能力. 基于此工具,无需数据库实例能够打开数 ...

  7. oracle运行原理ppt,oracle数据库基础培训PPT

    PPT内容 这是一个oracle数据库基础培训PPT,主要介绍了描述 Oracle 服务器的体系结构及其主要构件.列举用户连接到 Oracle 实例所涉及的结构等内容. Oracle数据库维护培训胶片 ...

  8. oracle 12cr2静默安装,oracle 12c R2静默安装

    1.扩大交换分区 dd if=/dev/zero of=/tmp/mem.swap bs=1M count=4096 /sbin/mkswap /tmp/mem.swap /sbin/swapon / ...

  9. oracle数据库中nvarchar,Oracle数据库中的varchar,varchar2,nvarchar,nvarchar2区别及用

    [varchar,varchar2 ] 联系: 1. varchar/varchar2用于存储可变长度的字符串 比如 varchar(20),存入字符串'abc', 则数据库中该字段只占3个字节,而不 ...

  10. 清除oracle服务注册表,oracle卸载清除注册表(彻底卸载)

    用Oracle自带的卸载程序不能从根本上卸载Oracle,从而为下次的安装留下隐患,那么怎么才能完全卸载Oracle呢? 那就是直接注册表清除,步骤如下: . 开始->设置->控制面板-& ...

最新文章

  1. 微软:超过96%的企业用户正在测试Win10
  2. 手写js的insertAfter
  3. 驱动开发中使用安全字符串函数
  4. VueJS定义组件规则
  5. Sql Server设置用户只能查看并访问特定数据库
  6. android 开源组件合集-UI篇(2013-11-07更新)
  7. Java 学习总结(187)—— 轻量级开源日志框架 tinylog 简介
  8. 产品设计:一层分类与多层分类模式的感悟
  9. VB.NET 按键代码 及组合键
  10. c++ 中引用()的用法和应用实例
  11. 如何一键生成gif动画?如何将录屏转成gif动画?推荐一款绿色开源小软件ScreenToGif
  12. unity3d + lua + 斗地主 系列 (1) 创建扑克对象
  13. [Python爬虫] 九、机器视觉与机器图像识别之Tesseract
  14. 首页白屏解决与优化方案
  15. Matlab 蒙太奇马赛克拼图(小图拼成大图)
  16. 基于javaweb的巡更巡检管理系统
  17. Mcafee 杀毒软件自动扫描U盘病毒完美解决方案与思路
  18. 兰大机试复试真题答案c语言版
  19. 超好用的图片管理软件:ImageRanger Mac版
  20. 又出新玩意,还是网易云音乐会玩

热门文章

  1. 静水流深2010年版系列教程[转]
  2. 从零搭建一款PC页面编辑器PC-Dooring
  3. html图标命名,html 命名规范
  4. php normalize,PHP DOMNode normalize()用法及代码示例
  5. 批处理文件获取计算机ip,批处理获取本机IP地址及MAC地址,输出到文件
  6. 一组绝对有益于科研的随想录(转载)
  7. 西南大学计算机科学学院官网,西南大学计算机与信息科学学院研究生导师简介-李艳涛...
  8. 【研究生论文写作】 思政相关题目选择题
  9. 淘客基地淘客小程序系统更新至1.2.4 版本
  10. 搜狗输入法 linux 怎么打开,ubuntu 15.10安装搜狗输入法不能打开