在plsql中查询语句时,执行sql语句查询数据时发现查出来的中文数据全都乱码,显示问号。上网查找后发现了解决方法。
发现是字符集的问题,没有与服务器字符集配置一致。
1,打开PLSQL,然后登陆PLSQL账户,任意账户都可以。
2,打开SQL窗口,键入select userenv(‘language’) from dual语句,然后执行,可以看到执行结果显示是服务器的字符集,字符集为:AMERICAN_AMERICA.ZHS16GBK
或者也可以键入select * from V$NLS_PARAMETERS语句查询服务器字符集,不过这张方法查询的字符集需要将第一、三、九行的字符串拼接起来,拼接结果为:AMERICAN_AMERICA.ZHS16GBK
3,回到桌面,在“我的电脑”中右键选择“属性”,在弹出的窗口中选择左边菜单中的“高级系统设置”,然在弹出的系统属性窗口中选择“高级”下的“环境变量(N)”。
4,在“系统变量”中新建环境变量,变量名为:NLS_LANG 变量值为:AMERICAN_AMERICA.ZHS16GBK ,然后确定即可。
5,接着在"系统变量"中再新建一个环境变量,变量名为:LANG 变量值为:zh_CN.GBK 然后确定。
6,关闭PLSQL客户端,重新打开,输入查询语句后会发现,中文就可以显示了。
本文介绍了解决PLSQL中中文数据乱码的方法,主要原因是字符集未与服务器配置一致。通过查询服务器字符集并调整环境变量NLS_LANG和LANG,使PLSQL能正确显示中文。
1770

被折叠的 条评论
为什么被折叠?



