oracle-64位的Windows系统如何与32位的PL/SQL建立连接

    我们的电脑如果是64位系统,可以安装64位的oracle11g数据库,可是当需要使用PL/SQL连接数据库时,发现PL/SQL是32位的,这时需要同时安装oracle的客户端和服务器端,并进行配置。本人在进行配置时,曾出现许多问题,现总结如下,希望同样遇到这样问题的程序员们能够从中找到解决的办法。

1.这是oracle的客户端文件,建议把它放在根目录下(我放在了D盘)

          oracle-64位的Windows系统如何与32位的PL/SQL建立连接

2.文件夹内有tnsnames.ora文件,打开此文件

     oracle-64位的Windows系统如何与32位的PL/SQL建立连接

3.此处只展示我的本地oracle的配置,示例如下:

     ps:"ORCL="一定要放在行首,否则无法读取配置信息

          127.0.0.1 为本地机,也可用本地计算机名进行替换。

      oracle-64位的Windows系统如何与32位的PL/SQL建立连接

4.配置完,打开PL/SQL,界面展示如下:

            oracle-64位的Windows系统如何与32位的PL/SQL建立连接

tnsnames.ora文件出现问题,则Connect as ... 不会出现,请检查此文件。

5.当我配置完客户端数据库后,发现Database无法进行下拉,于是开始找原因。

  1)进入Oracle11g数据库,也有一个tnsnames.ora文件,不需要去改动。

  2)进入PL/SQL,Tools-Preferences,如下图:

       把客户端的路径配置到Oracle Home  :D:\instantclient-basic-nt-12.2.0.1.0

       把客户端的路径下的oci.dll文件配置到OCI library : D:\instantclient-basic-nt-12.2.0.1.0\oci.dll

       点击OK,配置完成,退出后重新进入。

          oracle-64位的Windows系统如何与32位的PL/SQL建立连接

6.但此时依旧无法连接到数据库,还需配置环境变量TNS_ADMIN:

          oracle-64位的Windows系统如何与32位的PL/SQL建立连接

   再次重新登录PL/SQL,就可以进入PL/SQL了。

   ps:在网上找解决办法时,发现一种说法:需要把客户端的环境变量放到服务器端之前,但本人试过,无论顺序如何,都可连接到PL/SQL,感兴趣的朋友可以研究下。

    希望本文帮助到与我遇到相同问题的程序员们。