解决plsql中文显示问号(???)问题

原因:本机没有配置数据库字符集环境变量,或是与数据库字符集不一致。

步骤一:执行在plsql中执行 select userenv('language') from dual; 语句来查看本机的字符集,或是执行 select * from V$NLS_PARAMETERS; 语句。两者的区别是第一种查看到的是拼接好的一条字符集数据,第二种是数据库详细配置参数有多条数据需要将 第一行,第二行,第九行的value数据以 第一行_第二行.第九行的格式拼接起来,我的拼接好好后是AMERICAN_AMERICA.ZHS16GBK

步骤二:在环境变量中添加两条配置信息,鼠标右键我的电脑(计算机/此电脑)等图标,选择属性,选择高级系统设置,选择高级选项卡的环境变量,在系统变量里新建两条配置:

1、LANG=zh_CN.GBK(GBK是这样形式的,不同编码这里的value值需要跟着改变)

2、NLS_LANG=AMERICAN_AMERICA.ZHS16GBK(这个value值就是我们步骤一中拼接好的那个值)

步骤三:这步也是至关重要的,到这里我们就配置好了,很多的博客与帖子都说重启plsql即可,但是我的并没有生效,需要重启电脑 生效,很重要。

原文地址:https://www.cnblogs.com/yclizq/p/14790553.html