解决PLSQLDeveloper连接64位Oracle的oci.dll问题

需积分: 3 2 下载量 6 浏览量 更新于2024-09-12 收藏 39KB DOCX 举报
本文档主要介绍了如何在64位Windows Server 2008 R2系统上使用PL/SQL Developer连接到本机安装的64位Oracle 11.2.0.1数据库。问题在于,由于PL/SQL Developer是32位应用,而oci.dll是64位的,因此在尝试连接时遇到oci.dll无法加载的问题。 解决方法如下: 1. 下载并安装32位Oracle Instant Client:从Oracle官方网站(<http://www.oracle.com/technetwork/topics/winsoft-085727.html>)下载instantclient-basic-win32-11.2.0.1.0.zip,将其解压到一个目录,例如C:\oracle\instantclient_10_2,这将提供必要的Oracle客户端库文件。 2. 复制tnsnames.ora文件:将数据库服务器的tnsnames.ora文件(通常位于D:\app\wangshaoxuan\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora)复制到instantclient的目录下,以便PL/SQL Developer可以找到网络配置信息。 3. 配置PL/SQL Developer:在PL/SQL Developer的首选项或连接设置中,设置Oracle_Home(指向刚刚安装的Instant Client路径,即C:\oracle\instantclient_10_2)和OCILibrary(也指向同一路径),确保应用程序能找到正确的库文件。 4. 修改PL/SQL Developer启动方式:在PL/SQL Developer安装目录下创建一个批处理文件(例如plsqldev.bat),通过修改其快捷方式,添加环境变量设置,如setpath、setORACLE_HOME、setTNS_ADMIN和setNLS_LANG。其中,NLS_LANG的前半部分固定为'AMERICAN_AMERICA',因为Instant Client不支持其他语言,后半部分根据实际数据库字符集进行调整。 5. 使用批处理文件启动PL/SQL Developer:通过运行批处理文件启动PL/SQL Developer,@echo off命令关闭命令行输出,然后依次设置环境变量,最后调用startplsqldev.exe来启动应用程序。 附录提到,如果想查看数据库字符集,可以通过运行SQL*Plus(`sqlplus/nolog`)并在无登录情况下执行命令来获取。这有助于确保与数据库的正确连接,特别是在处理字符集相关的操作时。 总结来说,这篇文档详细指导了如何通过安装32位Oracle Instant Client、配置环境变量以及调整PL/SQL Developer启动脚本来解决64位Oracle和32位PL/SQL Developer之间的兼容性问题,确保两者能够顺利通信和交互。