利用ASP.NET查出Oracle数据库中文乱码问题
创始人
2024-03-25 20:21:09
0

把这两天两次安装IBM2650服务器中出现的问题做一个总结:

1、***次安装,用IBM的引导盘引导,按步就班的下来,选择语言,做Raid5,选择Windows系统等等。安装好Windows2003企业版之后,再去安装Oracle时,安装到一半时,提示不能创建快捷方式。取消,再安装还是不能创建快捷方式,就那样安装上了。安装之后Oracle运行倒也正常,导入数据,发现中文变成了乱码。

再安装editplus和winrar发现显示窗口的中文也是乱码,右键菜单上的部分中文是乱码。在网上搜了一下,原来是Windows选择的字符集不对,在控制面板-语言修改成中文后,右键菜单上的中文正常显示了,查看Oracle数据库里的中文,也正常了。按说,到这里问题也就解决了,应该结束了。可是配置上ASP.NET网站之后,发现查询出来Oracle数据库中的中文,在网页上显示为乱码。

2、于是开始了解决Oracle数据库中中文在ASP.NET网页上显示为乱码的过程。在网上搜,绝大多数说是Oracle字符集的问题,可我觉得,用plsql developer查看中文正常,应该不是Oracle字符集的问题。下班了,晚上回去继续找,还是没有找到有效的解决办法。写了三个查看Oracle数据库中中文的小程序,一个是用VB6写成的,一个用.NET写成的Winform程序,一个用.NET写成的webform程序。同时计划比较服务器上的Oracle的字符集和和本机上的Oracle的字符集。

第二天,先运行VB6程序,显示Oracle数据库的中文正常,再运行.NET Winform程序Oracle数据库中的中文是乱码,运行.NET webform程序,Oracle数据库中的中文也是乱码。初步判断是.NET的字符集不正常。于是找怎么修改.NET的字符集的问题,找了半天也无找到有说.NET字符集的问题,可能不是.NET字符集的问题。

于是就查看了Oracle的字符集,结果发现服务器上的Oracle的字符集和我机器上的Oracle的字符集还真的不一样:我机器上的Oracle的字符集是中文NLS_CHARACTERSET:ZHS16GBK,而服务器上的字符集是:WE8MSWIN1252。那就想办法修改Oracle的字符集吧,可是由于对Oracle不是很熟悉,弄了老大一会也没有没有弄好,想把Oracle卸载了重装,结果不小心把系统也搞出了一些毛病,干脆重装了系统,注意了那些问题,安装之后也就一切OK。

3、分析:

1)安装Oracle时不能创建快捷方式,及安装其他程序也不能创建快捷方式,并且安装过程中窗口上中文是乱码,右键菜单上的部分中文是乱码,这个原因是Windows没有设置成中文,也就是在IBM的引导盘安装的过程中,不熟悉,没有注意选择正确的时区,正确的字符集造成的。

2)VB6程序显示的Oracle中文字符正常,而.NET显示的Oracle中文为乱码的原因应该是它们的机制不同造成的:VB6用的是oledb,它可能使用Oracle本身的字符集原样的显示了Oracle中的字符;而.NET用的是另外的一种机制,它要把Oracle中字符进行转换后再显示出来。(这只是我分析,没有找到证据)

【编辑推荐】

  1. ASP.NET视频教程
  2. 详解ASP.NET在SQL Server 2005上自定义分页
  3. ASP.NET MVC正式开源 官方教材随即发布(附下载链接)

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...