oracle gbk 无法识别,oracle 字符集总结(超出GBK范围的字符存取问题未解决)
字符集总结:
一、服务器的字符集(用来存储数据用的编码格式)
二、操作系统字符集(用来显示、解码/编码与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范围的字符存取问题未解决)相关推荐
- linux7.0安装oracle乱码,Oracle Linux 7设置中文字符集
常安装Linux系统本着最简化安装,会默认使用英文字符集,不会安装中文字符集等其他字符.但是在一些必要情况下需要中文的支持,本文将演示如何在Oracle Linux7在安装中文字符集 1.首先使用lo ...
- zhs16gbk对应mysql_[Oracle] 彻底搞懂Oracle字符集
基本概念字符集(Character set):是一个系统支持的所有抽象字符的集合.字符是各种文字和符号的总称,包括各国家文字.标点符号.图形符号.数字等.常见的字符集有ASCII,ZHS16GB231 ...
- oracle查看编码格式以及修改字符集编码
oracle查看编码格式以及修改字符集编码 查看oracle数据库的编码集 客户端字符集环境select * from nls_instance_parameter,其来源于v$p ...
- oracle 输出重复记录,ORACLE 去除重复记录
ORACLE 去除重复记录 delete from tbl_talbe where (col1,col2,col3) in (select col1,col2,col3 from tbl_table ...
- oracle stalestats_深入理解oracle优化器统计数据(Optimizer Statistics)
理解oracle优化器统计数据 首先来介绍oracle数据库使用基于规则优化器(RBO)来决定如何执行一个sql语句.基于规则优化器顾名思义,它是遵循一组规则来判断一个sql语句的执行计划.这组规则是 ...
- oracle ko16mswin949,PRM DUL Oracle数据库恢复的最后一步
PRM-DUL是一种Oracle数据抽取工具(data unloader for Oracle),其具备跳过Oracle数据库引擎,直接从块级别抽取数据行的能力. 基于此工具,无需数据库实例能够打开数 ...
- oracle运行原理ppt,oracle数据库基础培训PPT
PPT内容 这是一个oracle数据库基础培训PPT,主要介绍了描述 Oracle 服务器的体系结构及其主要构件.列举用户连接到 Oracle 实例所涉及的结构等内容. Oracle数据库维护培训胶片 ...
- 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 / ...
- oracle数据库中nvarchar,Oracle数据库中的varchar,varchar2,nvarchar,nvarchar2区别及用
[varchar,varchar2 ] 联系: 1. varchar/varchar2用于存储可变长度的字符串 比如 varchar(20),存入字符串'abc', 则数据库中该字段只占3个字节,而不 ...
- 清除oracle服务注册表,oracle卸载清除注册表(彻底卸载)
用Oracle自带的卸载程序不能从根本上卸载Oracle,从而为下次的安装留下隐患,那么怎么才能完全卸载Oracle呢? 那就是直接注册表清除,步骤如下: . 开始->设置->控制面板-& ...
最新文章
- 微软:超过96%的企业用户正在测试Win10
- 手写js的insertAfter
- 驱动开发中使用安全字符串函数
- VueJS定义组件规则
- Sql Server设置用户只能查看并访问特定数据库
- android 开源组件合集-UI篇(2013-11-07更新)
- Java 学习总结(187)—— 轻量级开源日志框架 tinylog 简介
- 产品设计:一层分类与多层分类模式的感悟
- VB.NET 按键代码 及组合键
- c++ 中引用()的用法和应用实例
- 如何一键生成gif动画?如何将录屏转成gif动画?推荐一款绿色开源小软件ScreenToGif
- unity3d + lua + 斗地主 系列 (1) 创建扑克对象
- [Python爬虫] 九、机器视觉与机器图像识别之Tesseract
- 首页白屏解决与优化方案
- Matlab 蒙太奇马赛克拼图(小图拼成大图)
- 基于javaweb的巡更巡检管理系统
- Mcafee 杀毒软件自动扫描U盘病毒完美解决方案与思路
- 兰大机试复试真题答案c语言版
- 超好用的图片管理软件:ImageRanger Mac版
- 又出新玩意,还是网易云音乐会玩
热门文章
- 静水流深2010年版系列教程[转]
- 从零搭建一款PC页面编辑器PC-Dooring
- html图标命名,html 命名规范
- php normalize,PHP DOMNode normalize()用法及代码示例
- 批处理文件获取计算机ip,批处理获取本机IP地址及MAC地址,输出到文件
- 一组绝对有益于科研的随想录(转载)
- 西南大学计算机科学学院官网,西南大学计算机与信息科学学院研究生导师简介-李艳涛...
- 【研究生论文写作】 思政相关题目选择题
- 淘客基地淘客小程序系统更新至1.2.4 版本
- 搜狗输入法 linux 怎么打开,ubuntu 15.10安装搜狗输入法不能打开