VB6.0连接Oracle中文乱码
问题表述:
VB连接Oracle 11g数据库,取出的数据出现中文乱码,英文正常。
环境如下:
服务端:Oracle11g,Radhat,英文操作系统,数据库字符集 AMERICAN_AMERICA.ZHS16GBK
客户端:MSDAORA驱动包,XP中文,系统字符集GBK,VB6.0汉化版,安装有Oracle11g Client,注册表中在Oracle下有NLS_LANG键,键值为AMERICAN_AMERICA.ZHS16GBK
连接语句:
Conn.ConnectionString = "Provider=MSDAORA.1;Password=*****;User ID=******;Data Source=dbcenter;Persist Security Info=True"
获取数据后,中文显示为“?????”
解决方法:
1、查看服务器端数据库字符集
select userenv('language') from dual;
获得结果为 AMERICAN_AMERICA.ZHS16GBK
2、在XP系统环境中增加变量NLS_LANG,赋值AMERICAN_AMERICA.ZHS16GBK
即:NLS_LANG = AMERICAN_AMERICA.ZHS16GBK
3、保存后重启计算机或注销计算机
4、重新打开VB工程,无需修改代码,获取中文数据正常。
注意:
1、在没有配置环境变量的情况下,使用pl/sql或者navicat均可以正常获取中文数据,无乱码现象。
2、只有VB6.0出现该问题,配置NLS_LANG变量后,正常读取中文数据。
3、在VB连接语句中加入Unicode=True并不生效,无法解决中文乱码问题。
分析现象后,个人认为,pl/sql、navicat等客户端会读取注册表中Oracle的NLS_LANG键值,而VB在使用MSDAORA驱动访问Oracle时,会读取系统环境变量中的NLS_LANG参数,如果没有该参数,则会出现中文乱码问题,而英文显示正常,具体用的何种编码来解释获取的数据,尚未查明。
VB6.0连接Oracle中文乱码相关推荐
- C#连接Oracle中文乱码问题解决方法
C#连接Oracle中文乱码问题解决方法 参考文章: (1)C#连接Oracle中文乱码问题解决方法 (2)https://www.cnblogs.com/ycdx2001/p/3246139.htm ...
- dbeaver连接Oracle中文乱码的解决方案--druid
前言: dbeaver是一个优秀的通用数据库客户端连接工具,最重要的是社区版一直是开源免费.但是在连接服务端的WE8ISO8859P1字符集时,表中的数据中文查询出来显示为乱码,无论怎么修改参数都没用 ...
- php pdo连接oracle乱码,php pdo oracle中文乱码的快速解决方法
在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码 ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_INCLUDE_PA ...
- php pdo连接oracle乱码,php pdo oracle中文乱码的快速解决方法_PHP
在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码 ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_INCLUDE_PA ...
- php pdo 中文乱码,php pdo oracle中文乱码的快速解决方法
在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_INCLUDE_PAT ...
- linux oracle查询乱码问题,linux中oracle中文乱码解决方法
乱码问题的根源是字符集的修改,下面我们来看一下linux中oracle中文乱码解决方法. 查看客户端的语言编码设置: 配置文件中的配置: cat ~/.bash_profile 注意修改配置信息:ex ...
- linux下的oracle中文乱码,Linux环境解决Oracle 中文乱码
linux下Oracle显示中文乱码 1.Oracle数据库出现乱码的原因: 操作系统与服务器一致,但客户端与服务器字符集不一致 客户端与服务器一致,但操作系统与服务器不一致 2.解决办法: 设置相关 ...
- oracle客户端查看字符集,oracle 中文乱码---查看和修改客户端字符集
客户端NLS_LANG的设置方法 Windows: # 常用中文字符集set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK # 常用unicode字符集 set ...
- c# mysql 编码_c# 连接MySQL中文乱码问题的正确方案
以下的文章主要向大家介绍的是c# 连接MySQL中文乱码问题的正确解决方法,一开始不太清楚为什么整个数据库的默认配置都为utf-8,而且有些人在使用http协议传送utf-8的汉字时,是正确的执行了的 ...
- c 访问mysql 乱码_c语言连接mysql中文乱码怎么办
c语言连接mysql中文乱码怎么办 发布时间:2020-06-30 13:42:44 来源:亿速云 阅读:96 作者:清晨 这篇文章主要介绍c语言连接mysql中文乱码怎么办,文中示例介绍的非常详细, ...
最新文章
- java param request_SpringMvc之@RequestParam详解
- 机器学习 | 数据从哪里找?手把手教你构建数据集
- git commit之后,想撤销commit
- 通过堡垒机rdp 黑屏_[调优]彻底解决RDP连接过程缓慢的问题
- 事务消息应用场景、实现原理与项目实战
- 迈克菲实验室:仅42%的网络安全专业人士使用共享威胁情报
- JQuery Ajax 使用FormData上传文件对象
- php中perl配置,Windows下 Apache、PHP和Perl的安装配置
- 创业公司用 Serverless,到底香不香?
- Atitit 业务领域体系分类 目录 1. 按照互联网企业类型以及只是体系类的分类	2 2. 电子商务	2 3. **通信类社交 Im类 em	2 4. **信息搜索类爬虫	2 4.1. 媒体
- mysql2000卸载_如何卸载mysql 图文教程教你完全卸载mysql数据库
- 从苹果2015年春季发布会看移动互联网的发展
- 从零开始学习ThingJS之创建App对象
- 新媒体时代的公关怎么做
- 最适合入门的100个深度学习实战项目
- 《蔡康永的201堂情商课(完结)》学习
- cocos-js与android平台互相调用
- SRM 475 DIV1 900
- Unity如何限制3D物体的旋转角度
- mysql简化的审批流程表设计
热门文章
- C#使用Socket实现一个socket服务器与多个socket客户端通信
- 论文阅读——SIPP: Safe Interval Path Planning for Dynamic Environments
- Linux 入门必备命令
- ug草图精度怎么设置_UG怎么设置草图尺寸? UG草图尺寸的编辑方法
- 武汉大学计算机学院电子与通信工程,武汉大学电子信息学院信息与通信工程
- 并网逆变器PI控制(并网模式)
- matlab 图像方差,Matlab方差解析var--实例说明matlab求方差
- matlab求方差、均方值和功率
- 《未来世界的幸存者》:你会是未来世界的幸存者吗?
- 按头安利!精品又实用的unity3D游戏素材看这里!