问题现象:

打开 plsql,执行 sql 语句,结果中中文显示乱码(如下图中所示):

解决方法:

1)查看数据库字符集

输入 sql 语句 select userenv('language') from dual

 2)查看本地字符集

输入 sql 语句 select * from V$NLS_PARAMETERS ,查看第一行和第九行是否对应

3)查看环境变量的设置

查看是否有变量 NLS_LANG,没有则新建该变量

4)新建变量

新建系统环境变量,设置变量名:NLS_LANG,变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK(这里的变量值需要与数据库环境相同所以不固定:比如还会有 utf-8 等),确定即可

5)重新打开 plsql

执行 sql 语句,问题解决

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐