社区
C#
帖子详情
c# 处理oracle数据库字符集是us7ascii 在C#程序中怎么处理才使中文不乱码?
mars_guoting
2009-12-26 05:56:20
c# 和 oracle us7ascii 在处理中文乱码问题
...全文
407
3
打赏
收藏
c# 处理oracle数据库字符集是us7ascii 在C#程序中怎么处理才使中文不乱码?
c# 和 oracle us7ascii 在处理中文乱码问题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vrhero
2009-12-26
打赏
举报
回复
把客户端字符集也设置为US7ASCII即可...但不幸地是你的服务器字符集设置为US7ASCII而你非要存储中文字符则存储的字符编码都是错误的...以后的导出、导入包括升级都会遇到相当大的麻烦...
如果你的数据库还没有正式上线或入库的数据还很少,赶快纠正这一错误...更改服务器字符集为ZHS16GBK或AL32UTF8,并重新生成数据...
mars_guoting
2009-12-26
打赏
举报
回复
没有试出来
人到中年琐事多
2009-12-26
打赏
举报
回复
没用过oracle,常用的几个轮流试一下就知道了
c#
程序
,
oracle
使用Devart驱动解决第第三方库是
us7
ascii
,数据
乱码
的问题
最近做项目,要跟对方系统的库进行读写,结果发现对方采用的是
oracle
的
us7
ascii
编码,我们系统默认采用的是ZHS16GBK,导致我们客户端读取和写入对方库的数据都是
乱码
,搜索网上,发现需要采用独立的
oracle
驱动去
处理
,最后采用Devart驱动,可以指定
字符集
编码
oracle
字符集
乱码
解决
由于历史的原因,早期的
oracle
没有
中
文
字符集
(如
oracle
6、
oracle
7、
oracle
7.1),但有的用户从那时起就使用
数据库
了, 并用
US7
ASCII
字符集
存储了
中
文
,或是有的用户在创建
数据库
时,不考虑清楚,随意选择一个默认的
字符集
,如WE8ISO8859P1或
US7
ASCII
,而这两个
字符集
都没有汉字编码,虽然有些时候选用这种
字符集
好象也能正常使用,但用这种
字符集
存储汉字信息从原则上说就是错误的,它会给
数据库
的使用与维护带来一系列的麻烦。正常情况下,要将汉字存入
数据库
,
数据库
字符集
必须支持
中
文
,而将
数据库
字符集
设置为
US7
ASCII
等单字节
字符集
是不合适的。
US7
ASCII
字符集
只定义了128个符号,并不支持汉字。另外,如果在SQL*PLUS
中
能够输入
中
文
,操作系统缺省应该是支持
中
文
的,但如果在NLS_LANG
中
的
字符集
设置为
US7
ASCII
,显然也是不正确的,它没有反映客户端的实际情况。但在实际应用
中
汉字显示却是正确的,这主要是因为
Oracle
检查
数据库
与客户端的
字符集
设置是同样的,那么数据在客户与
数据库
之间的存取过程
中
将不发生任何转换,但是这实际上导致了
数据库
标识的
字符集
与实际存入的内容是不相符的。而在SELECT的过程
中
,
Oracle
同样检查发现
数据库
与客户端的
字符集
设置是相同的,所以它也将存入的内容原封不动地传送到客户端,而客户端操作系统识别出这是汉字编码所以能够正确显示。
jdbc连接
oracle
字符集
不同出现
乱码
从远程
oracle
数据库
取数据是
乱码
,因为远程
oracle
字符集
为AMERICAN_AMERICA.
US7
ASCII
本地
oracle
字符集
为SIMPLIFIED CHINESE_CHINA.ZHS16GBK 所以是
乱码
,解决办法请下载文档 多谢 因为要下载其他资源无分 多多关注吧
oracle
英文
字符集
插入到
中
文
字符集
在对
数据库
访问的时候,由于客户端和服务器的
字符集
不一样,客户端的
字符集
需要访问多个
数据库
,不能修改环境变量,可以使用该方法进行转换和将英文
字符集
的数据插入到
中
文
字符集
解决
ORACLE
字符集
转化的方法技术.pdf
解决
ORACLE
字符集
转化的方法技术.pdf
C#
111,120
社区成员
642,545
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章