`

Oracle 客户端pl/sql查询出现乱码的解决办法

 
阅读更多

公司实际项目中都有专门的oracle服务器,我们自己的电脑上只需安装客户端即可访问远程数据库,下面就介绍下如何安装 oracle 客户端及乱码问题的处理:

今天在win7上搭建项目环境时,发现以前的oracle客户端绿色安装方法不行(以前的方式),以为是步骤问题,在同事的xp上操作了一遍2分钟就连上数据库了。

后来在网上找了另外的方法,跟原来的方式差不太多:

 

网上搜到的Oracle官方的解决方案:
Oracle官方提供了名为“Instant Client Package”的软件,较好的实现了Oracle客户端绿化的解决方案。
首先从:
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
下载程序包:
Instant Client Package - Basic: All files required to run OCI, OCCI, and JDBC-OCI applications

我下载的是:instantclient-basic-nt-11.2.0.2.0.zip (下载地址:https://edelivery.oracle.com/akam/otn/nt/instantclient/112020/instantclient-basic-nt-11.2.0.2.0.zip)

然后解压到一个目录,例如:C:\Users\Administrator\Downloads\instantclient-basic-nt-12.1.0.1.0\instantclient_12_1目录,然后在这个目录下建立NETWORK文件夹,跟其他文件在同一级目录即可,接着再这个文件夹下再建立ADMIN文件夹,然后在ADMIN内建立tnsnames.ora文件,格式如下(红色需要自行修改):

yourDataBaseName =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = yourhostIp )(PORT = 1521))
   )
   (CONNECT_DATA =
     (SERVICE_NAME = yourSID   )
   )
  )

例如:
XMDS =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 145.24.16.181)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = XMDS)
    )
  )

这里根据自己的实际情况配置。接着打开PL/SQL,在“Tools-->perference”里面设置OCI Library和Oracle_home,我的设置是
Oracle_home=D:\Program Files\instantclient_11_2
OCI Library=D:\Program Files\instantclient_11_2\oci.dll,

上面的配置工作完成后,还需要做一点来解决中文乱码的问题:
写一个批处理PLSql_run.bat放到Pplsqldeveloper安装目录下,内容如下:
set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
PLSQLDev.exe


这个脚本的作用是告诉PLSqlDev服务器端的字符集,以便于在客户端进行正确处理,如果服务端字符集不是ZHS16GBK,则上面的脚本文件也要相应改动,常用几个中文字符集如下:
set nls_lang=simplified chinese_china.zhs16cgb231280   
set nls_lang=simplified chinese_china.ZHS16GBK   
set nls_lang=simplified chinese_china.Utf8   

但是这样每次都要运行PLSql_run.bat来启动plsql,我是直接在环境变量里添加了NLS_LANG=simplified chinese_china.ZHS16GBK

#########
提示如果出现Oracle Instant Client 出现 ORA-12705: Cannot access NLS data files or invalid environment specified 错误。修改如下: 如果是Windows平台,注册表里 \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 查找键 NLS_LANG,这个键由Oracle标准客户端安装创建, 值是 NA 。 这个导致了 ORA-12705错误。解决方法就是修改NA为SIMPLIFIED CHINESE_CHINA.ZHS16GBK。 Linux下 如果环境变量 NLS_LANG 值是NA 会引起 ORA-12705 错误,解决方法是修改set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
#########
另外,网上有些说法是不同版本的包支持不同的Oracle服务器版本:
instantclient-basic-win32-11.1.0.x.0.zip    -这个是支持Oracle 9i 以上的版(不包括Oracle9i)
instantclient-basic-win32-10.2.0.x.zip      -这个是支持Oracle8i 和Oracle9i 的。

分享到:
评论

相关推荐

    Oracle客户端PL/SQL 中文乱码解决

    解决Oracle客户端PL/SQL中文乱码的步骤如下: 1. **检查服务器端字符集**:首先确认数据库服务器使用的字符集。可以使用SQL命令`SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET'`来查看。...

    免安装Oracle客户端使用PL/SQL连接Oracle的2种方法

    ### 免安装Oracle客户端使用PL/SQL连接Oracle的2种方法 #### 方法一:使用Instant Client Package连接Oracle **背景与动机** 通常情况下,使用PL/SQL Developer连接Oracle数据库时,需要先安装完整的Oracle客户端...

    PL/SQL不安装Oracle连接数据库

    用户变量中新建:(不进行此操作,容易出现PL/SQL查询数据中文乱码) 变量名:nls_lang 变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 系统变量Path中添加如D:\oracle\instantclient\instantclient 4、PLSQl...

    pl/sql汉化

    PL/SQL Developer是一款由Allround Automations开发的专业Oracle数据库管理工具,主要用于编写、调试和执行PL/SQL代码。"PL/SQL汉化"是指将PL/SQL Developer的默认英文界面翻译成中文,以便于中文用户更方便地使用该...

    plsql乱码解决办法

    PL/SQL 乱码解决办法 PL/SQL 乱码问题是 Oracle 数据库开发中常见的问题之一,当我们使用 PL/SQL Developer 查询数据时,可能会遇到中文乱码的问题。下面我们将详细介绍 PL/SQL 乱码的解决办法。 问题描述 在使用...

    PL/SQL Developer 中文版帮助手册(PDF)

    由于实际内容部分呈现为乱码,无法直接解读具体内容,因此这里将根据标题、描述以及标签来进行有关PL/SQL Developer的一些基本知识点的阐述。 ### PL/SQL Developer简介 PL/SQL Developer是一款专为Oracle数据库...

    Orcale 数据库客户端PL/SQL中文乱码的问题

    解决Oracle数据库客户端PL/SQL中文乱码问题的关键在于正确配置环境变量NLS_LANG。这个变量定义了客户端与数据库之间的字符集通信标准,确保数据在传输过程中能够正确地识别和显示中文字符。 具体步骤如下: 1. ...

    Orcale 数据库客户端PL/SQL 中文乱码的问题解决方法

    总之,解决Oracle数据库客户端PL/SQL中的中文乱码问题主要是通过配置正确的NLS_LANG环境变量,使其匹配服务器端的字符集设置。正确设置后,用户就能顺利地进行中文数据的查询和操作,避免乱码带来的困扰。

    win7 64位oracle11g 64位PL/SQL安装说明

    - 此步骤确保PL/SQL Developer能够正确识别Oracle客户端库,从而与Oracle 11g服务端进行通信。 #### 五、修改 tnsnames.ora 文件 - 修改`tnsnames.ora`文件中的内容,确保连接到Oracle服务的名称和参数正确无误。 -...

    pl/sql developer 中文版

    PL/SQL Developer是一款专为Oracle数据库开发设计的强大集成开发环境(IDE),主要用于编写、调试、测试和管理PL/SQL代码。这款工具以其易用性、高效性和全面的功能深受Oracle数据库开发人员的喜爱。"绿色版"通常指...

    不安装oracle客户端,用plsql连接oracle

    ### 不安装Oracle客户端,使用PL/SQL Developer连接Oracle数据库 #### 概述 在进行Oracle数据库的开发工作中,我们通常会使用SQL Developer或PL/SQL Developer等工具来提高工作效率。然而,这些工具往往需要依赖...

    不安装Oracle就能使用plsql的方法

    使用 PL/SQL 不安装 Oracle 客户端的方法 PL/SQL 是 Oracle 的一种编程语言,通常情况下,使用 PL/SQL 需要安装 Oracle 客户端。但是,通过使用 instantclient-basic 包,我们可以不安装 Oracle 客户端而使用 PL/...

    plsql不安装oracle客户端 进行远程连接

    ### PL/SQL 不安装 Oracle 客户端进行远程连接 在 IT 行业中,数据库管理与开发是一项非常重要的工作,而 Oracle 数据库系统作为业界领先的企业级数据库解决方案之一,被广泛应用于各种业务场景中。PL/SQL 开发工具...

    连接oracle,免安装PL/SQL

    1、把oracle_dll文件夹拷贝到D盘根目录下 2、配置“D:\oracle_dll\network\ADMIN”目录下的“tnsnames.ora”文件 3、打开“plsqldev.exe”,进入系统,右键点击“customize”,修改配置文件 绿点的地方表示需要修改...

Global site tag (gtag.js) - Google Analytics