美文网首页
使用instantclient_11_2客户端中文乱码问题解决方

使用instantclient_11_2客户端中文乱码问题解决方

作者: twoapes | 来源:发表于2018-08-12 23:16 被阅读128次

    实际环境简介

    PLSQL Developer 11安装路径:D:\tool\DEVELOPMENT\PLSQL Developer 11\PLSQL Developer 11
    instantclient_11_2客户端路径:D:\tool\DEVELOPMENT\PLSQL Developer 11\instantclient_11_2
    查询任意一张表,遇到中文数据,结果都是??????....
    查询结果请在本机上执行后以实际情况为准,本文所查询的结果不一定和大家的都一致
    说明:2018年8月12的笔记有误,请以此修改为准

    问题还原

    PLSQL Developer 11或sqlplus中执行sql语句出现????结果数据


    解决方案

    请按如下顺序进行

    1.执行如下sql代码(必须在服务器上执行,否则结果可能有误)

    select   userenv('language')  from   dual;--结果为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
    

    2.复制结果:

    @echo off
    set ORACLE_HOME=D:\tool\DEVELOPMENT\PLSQL Developer 11\instantclient_11_2
    set path=%ORACLE_HOME%
    set TNS_ADMIN=%ORACLE_HOME%
    set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
    start plsqldev.exe
    end:
    

    3.在PLSQL Developer 11安装路径下新建一个bat文件(文件名自取)

    创建文件(内容就是步骤2的脚本):


    4.双击执行bat文件以打开PLSQL Developer 11

    打开后执行任意一段之前乱码的sql即可确认是否修复中文乱码问题

    如果需要永久设置环境变量,配置如下

    setx ORACLE_HOME "D:\tool\DEVELOPMENT\PLSQL Developer 11\instantclient_11_2"
    setx path  "%ORACLE_HOME%;%path%"
    setx TNS_ADMIN "%ORACLE_HOME%"
    setx LD_LIBRARY_PATH "%ORACLE_HOME%"
    setx SQLPATH  "%ORACLE_HOME%"
    setx NLS_LANG "SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
    start plsqldev.exe
    

    start plsqldev.exe可以不写,如果过程出错请使用在文本末端加入pause;后执行暂停操作即可检查

    相关文章

      网友评论

          本文标题:使用instantclient_11_2客户端中文乱码问题解决方

          本文链接:https://www.haomeiwen.com/subject/ydtsbftx.html