参考:https://www.cnblogs.com/terryMe/p/6725120.html
解决乱码问题
解决乱码问题需要关注的三点:
(1)Oracle数据库内部的字符集
(2)Oracle客户端应用所在环境的字符集
(3)Oracle数据库所在服务器的系统中NLS_LANG变量里保存的字符集(最好与前两点保持一致)
解决方法:
步骤一:查询Oracle数据库所在服务器的系统中NLS_LANG变量里保存的字符集
方式一:
select * from v$nls_parameters;
查询结果如下:
NLS_LANGUAGE SIMPLIFIED CHINESE
NLS_TERRITORY CHINA
NLS_CHARACTERSET ZHS16GBK
方式二:
select userenv(‘language’) from dual;
查询结果如下:
userenv(‘language’)
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
上述方式都可查得:方式当前oracle服务器内部的字符集为SIMPLIFIED CHINESE_CHINA.ZHS16GBK
步骤二:配置环境变量
配置oracle客户端所在环境的字符集,使其与oracle服务器内部字符集配置保持一致:
变量名:NLS_LANG 变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK