一、问题描述
由于 PLSQL Developer 没有64位版本,所以在64位操作系统上要运行该程序时,Oracle时就会报错,以下是解决办法。
二、处理方法
1.首先到Oracle官网上下载一个32位的客户端(instantclient),要下载 basic 版本的,不要下载 basiclite 版本的。
(1)进入下载界面选择 Istant Client

(2)进入Instant Client 下载,选择32位

(3)选择basic版本下载

2.把下载到的客户端程序,解压缩到了Oracle 的安装目录(D:\oracle\product\instantclient_11_2),然后将$ORACLE_HOME\network\admin\tnsnames.ora复制到该目录中。
3.设置环境变量
增加新变量:
变量名:TNS_ADMIN
变量值:D:\oracle\product\instantclient_11_2

4.在PLSQL Developer 程序目录中创建start.bat文件,以下是start.bat的内容:
@echo off
set path=D:\oracle\product\instantclient_11_2
set ORACLE_HOME=D:\oracle\product\instantclient_11_2
set TNS_ADMIN=D:\oracle\product\instantclient_11_2
set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
start plsqldev.exe
|
其中 set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 的 ZHS16GBK 是你的数据库编码,常用字符集有AMERICAN_AMERICA.AL32UTF8
5.启动 PLSQL Developer,不要登录,点击Cancel,直接进入

6.配置PLSQL Developer
点击工具→首选项→连接,把“Oracle 主目录名”设置为空,并把 “OCI 库” 设置为instantclient 目录中的 oci.dll 的路径,路径是D:\oracle\product\instantclient_11_2\oci.dll

7.将start.bat创建快捷方式到桌面,最好将图标变更为plsql developer的图标

8.运行start.bat进入PLSQL Developer登录界面,此时应该正常读取到TNSNAMES.ORA列表为正确

9.验证 可以通过查询信息看出TNS FILE的文件路径


三、总结
看似容易的问题,在群里已经有好几位朋友遇见过了,现在我整理一下,供大家参考。这是一种绕过问题的处理方法,当然也可以不使用PLSQL Developer,建议使用ORACLE官方的SQL Developer,也是很好的,我个人推荐。