PLSQL打开sql文件中文乱码解决方案

注:修改过程中,所设置的编码格式必须要保持一致!!不能出现数据库和注册表的字符编码格式不同

  1. 查看数据库当前字符集参数设置
    SELECT * FROM v$nls_parameters;

  2. 查看数据库可用字符集参数设置
    SELECT * FROM v$nls_valid_values;

假定数据库使用的是:American_America.AL32UTF8字符集。查询方式:SELECT * FROM v$nls_parameters ; 查看NLS_CHARACTERSET 的值是多少,我的AL32UTF8。

则需要将NLS_LANG的值设置成 :AMERICAN_AMERICA.AL32UTF8

(1):注册表中的NLS_LANG

单击左下角的【开始】按钮, 单击右侧的【运行】命令 在【运行】对话框输入【regedit】,单击【确定】按钮

可以通过修改注册表键值永久设置
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG

设定为:American_America.AL32UTF8

(2):环境变量

环境变量中,添加NLS_LANG变量名

值设定为:American_America.AL32UTF8

从新打开plsql,打开sql文件,如果还不行

如图所示,把sql文件另存为UTF-8格式,然后就可以了

这样修改成功后,如果出现乱码的情况,只需要设置pl/sql内环境
PLSQL打开sql文件中文乱码解决方案
修改成utf-8格式