Oracle显示中文出现问号(乱码)????

时间:2024-03-15 07:37:21

这两天刚刚使用Oracle,出现了好多不愉快的事情,下面分享一下我的一点经历:

(1)关于软件版本的问题,我到现在还没有解决,欢迎各路大佬、神仙给点建议:

Oracle11g64位,plsql可视化工具是plsqldev1106x64,plsqldev1207x64也用过,看名字就知道都是64位的。按道理Oracle11g64和plsqldev x64搭配是没有问题的,都是64位的,但是这个问题花了我一星期没有解决,无奈只能放弃,odbc import想要导入excel数据的时候出现问题,问题如图所示:

Oracle显示中文出现问号(乱码)????

网上说的都是两种可能:①到odbcad32去加载什么32位(plsql是64位的,syswow64那里面的就是加载32位的excel驱动器,而system32下面的那个是加载64位的,这是网上看别人说的,不必纠结这些)的excel驱动器,最后尝试失败,没用!

Oracle显示中文出现问号(乱码)????

然后我也尝试了下载64位的excel(2010年的office64位的),也是失败!②前面都失败了,我不得不退而求其次,卸掉64位的plsql(网上一大片说没有64位的plsql,包括最近两年的文章!),但是毫无疑问我这就是64位的plsql,下了32位的plsql和32位的Oracle client,才得以继续。

(2)关于Oracle显示中文出现问号(乱码)????

         我找了很久,最后终于找到了答案,先告诉大家答案,问题当然(应该)是出在字符集上了,首先,网上也很多解答,主要是:①设置环境变量NLS_LANG,值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK(我电脑一开始是没有这个的);②win+R,输入regedit,看图

Oracle显示中文出现问号(乱码)????按道理说这里这里默认就是这样的,不用改。

前面两点各个地方都说了,而且说的很详细,大家如果看我这里的看不懂,多看几篇其他人的一定看得懂!

BUT,重磅来了, 问题的关键不在前面两点,在于山水之间也,额,抱歉,在于导入的数据库(可以说已经成型了,不受你更改字符集的影响了)。一般我们发现Oracle查询数据库出现中文是????说明我们已经导入了excel数据了,此时,再来更改字符集,对已经导入的excel文件没有影响,你会发现重启plsql还是一样的乱码问题,然后怀疑自己是不是哪里做错了,很遗憾,很无语,答案不是你的问题,是Oracle的bug,你只有重新导入excel数据,才能解决乱码?????的问题!(希望大家早点看到这里,或者类似的解答,早日解决问题,不像我,花了2天时间)。

最后吐槽一下:

老夫很奔溃,知道为什么叫老夫吗,老夫昨天到今天,就因为显示这个中文的问题,奔走于百度各个网页,无果!以为是这个问题,以为是那个问题,仔细读了各种解决方案好几遍,生怕少了什么,做错了什么,为什么结果不对,最后看见红字的我眼泪不禁掉了下来,苍天啊,收了这个Oracle吧,他太变态了,竟然有这样的bug!小屁孩我没学到什么真正有用的高科技的东西(最近贸易战闹得厉害,趁一波热点),时间都花在这狗屁软件上面了,美国人真正的实现了低科技都不转移,更不用说高科技了,Trump你厉害。

受教于:https://blog.csdn.net/fly__love/article/details/77372871#commentBox

感谢文章作者最后一部分的指点!在这里共享给大家,帮助大家少走弯路,只有经历过的人才知道这种狗屁问题多么操蛋。