[oracle]解决centos 7下oracle的中文乱码问题
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,首先在形成中文乱码的原因是由于字符集不统一导致的,不同的字符集在转换的过程中必然要出现乱码,当然不排除可以转换。所以要解决中文乱码问题,思路是将输入、存储、显示等流程中涉及到字符集都统一为一种,对于o
千家信息网最后更新 2025年01月21日[oracle]解决centos 7下oracle的中文乱码问题
首先在形成中文乱码的原因是由于字符集不统一导致的,不同的字符集在转换的过程中必然要出现乱码,当然不排除可以转换。所以要解决中文乱码问题,思路是将输入、存储、显示等流程中涉及到字符集都统一为一种,对于oracle首先必须满足的先决条件是要服务端和客户段的字符集统一,若还不能解决问题,同时还要将系统的字符集与之统一,甚至导入或输入数据所使用的字符集统一。
看了网上的一些资料后,都说修改服务器的字符集风险比较大,确实,测试开发用还好说,假若是上线项目的服务器,那修改服务器字符集所带来的后果是不堪的,废话我多说以下贴上我的解决办法。
1、乱码问题
刚开始的时候通过sql语句建表,并且插入数据,最后进行select,在命令界面总是显示如下问题:
2、查询服务端的字符集
SQL> select userenv('language') from dual;
显示如下结果:
AMERICAN_AMERICA.WE8MSWIN1252
这个字符集比较奇葩阿,从来没有见过,但是没见过的东西太多了,既然人家设计默认如此字符集,应该是有着其有利之处的
3、查看配置文件中客户端设置的字符集
vi /home/oracle/.bash_profile
显示结果如下:
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
原来我在安装oracle时将客户端的字符集设置成了AMERICAN_AMERICA.ZHS16GBK,服务端和客户端的字符集不相同必然要出错,将客户端的字符集修改为AMERICAN_AMERICA.WE8MSWIN1252,重新执行程序,令人赏心悦目的结果出现了:
字符
字符集
客户
服务
乱码
问题
端的
统一
结果
中文
必然
数据
服务器
输入
不同
悦目
相同
赏心
赏心悦目
东西
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
发件服务器
软件开发人员常用的术语
油田企业网络安全经验分享
马鞍山赡焕网络技术有限公司
西藏城管通软件开发系统
性价比高的零信任网络安全
梦幻手游新服务器列表
安装SDK软件开发工具
数据库系统由相应的什么组成
山东联想服务器代理测评
小霸王服务器可以更换吗
湖北智能软件开发以客为尊
游戏后台数据库分析
cygwin 服务器
爱如生经典数据库
沁县网络安全办
it服务器工程方案
湖州信息网络技术服务
php上传excel文件更新数据库
闫丽娜数据库百度云
数字化转型网络安全总体设计
网络安全儿童画三年级
花名册怎么制作数据库
无锡软件开发产业化
三十二岁转行软件开发
服务器崩溃了三次
信息网络安全工程考研
sql数据库毕业答辩问题
网吧服务器是什么
逃离塔科夫法国服务器怎么样