楼主: jeffli73

[精华] Oracle数据库字符集问题解析

[复制链接]
论坛徽章:
17
ITPUB元老
日期:2005-02-28 12:57:00ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51
111#
发表于 2006-3-24 23:56 | 只看该作者
两个字符集是不能转换的吧,只能建一个新的实例了
直接update的方式更改是不安全的。而且只对低版本的ORACLE生效。

使用道具 举报

回复
论坛徽章:
3
生肖徽章2007版:鸡
日期:2008-01-02 17:35:53目光如炬
日期:2017-07-30 22:00:00火眼金睛
日期:2017-08-01 17:00:03
112#
发表于 2006-3-25 12:51 | 只看该作者
很经典,楼主辛苦了!!!

使用道具 举报

回复
论坛徽章:
1
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
113#
发表于 2006-3-25 17:23 | 只看该作者
如何更改dmp文件里的字符集属性

使用道具 举报

回复
论坛徽章:
2
授权会员
日期:2006-04-28 13:53:48ITPUB元老
日期:2006-05-25 09:17:44
114#
发表于 2006-4-11 14:15 | 只看该作者
学到了很多,感谢楼主

使用道具 举报

回复
论坛徽章:
1
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
115#
发表于 2006-4-13 00:02 | 只看该作者

关于向oracle插入生僻字出错的问题

搂主,偶有一个问题请教:
使用环境:Windows Server 2003+Oracle 9i,数据库字符集设置为SIMPLIFIED CHINESE_CHINA.ZHS16CGB231280;客户端安装同一台机器上,将注册表中的“NLS_LANG”值也改为SIMPLIFIED CHINESE_CHINA.ZHS16CGB231280。
以下是命令执行过程:
SQL> insert into czlb (zm,zmlm) values (南宁','NNZ');

已创建 1 行。

SQL> insert into czlb (zm,zmlm) values ('燊达','NNQ');
ERROR:
ORA-01756: 括号内的字符串没有正确结束

是否是“燊”字在oracle字符集中没有编码?如何解决?

使用道具 举报

回复
论坛徽章:
0
116#
发表于 2006-4-19 16:56 | 只看该作者
十分详细,谢谢楼主

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2006-05-08 09:05:38
117#
发表于 2006-5-7 13:38 | 只看该作者

Re: 实验结果分析二

为什么我查询出来是四个????呢

我的版本是9..2.0.6

最初由 jeffli73 发布
[B]

这主要是因为Oracle检查发现数据库设置的字符集与客户端配置字符集不同,它将对数据进行字符集的转换。数据库中实际存放的数据为182(10110110)、171(10101011)、177(10110001)、177(10110001),由于数据库字符集设置为US7ASCII,它是一个7bit的字符集,存储在8bit的字节中,则Oracle忽略各字节的最高bit,则182(10110110)就变成了54(0110110),在ZHS16GBK中代表数字符号“6”(当然在其它字符集中也是“6”),同样过程也发生在其它3个字节,这样“东北”就变成了“6+11”。 [/B]

使用道具 举报

回复
论坛徽章:
5
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44奔驰
日期:2013-10-25 17:29:33
118#
发表于 2006-5-8 11:53 | 只看该作者
學習

使用道具 举报

回复
论坛徽章:
2
授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34
119#
发表于 2006-5-8 14:01 | 只看该作者

Re: Re: 实验结果分析二

最初由 nothing315 发布
[B]为什么我查询出来是四个????呢

我的版本是9..2.0.6

[/B]


你的环境变量是怎么设置的?
就是nls_lang,
用什么查询出来的,你的数据库里dump出来是什么样的?

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2006-05-08 09:05:38
120#
发表于 2006-5-8 15:18 | 只看该作者
就是一步一步地按照原文来做的啊

dump出来的结果跟: 客户端用nls_lang=us7ascii的情况是一模一样的。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表