win7 64位系统 PB连接oracle数据库出现“oracle library oci.dll could not be loaded”问题的解决方法
今天与大家分享一个自己的学习笔记,希望能给遇到同样问题的人带来帮助。 不知道大家在win7 64位系统下用 PB连接oracle数据库时,是否遇到过“oracle library oci.dll could not be loaded”问题。 今天,在win7 64位系统下用 PB连接oracle数据库时,一直出现上述错误,在百度上找了很久,都没有找到一个完
不知道大家在win7 64位系统下用 PB连接oracle数据库时,是否遇到过“oracle library oci.dll could not be loaded”问题。
今天,在win7 64位系统下用 PB连接oracle数据库时,一直出现上述错误,在百度上找了很久,都没有找到一个完整的解决方案,咨询了很多人,(他们都说是我的PB和oracle没装好,但我装的时候没出现任何问题,一切都很顺利,而且PB和oracle都能正常使用,就是用PB连接oracle时怎么也连不上,一直找不到解决方案,于是听取了他们的意见,抱着一线希望,把PB和oracle都卸了重装,可是,还是同样的错误啊!!!要崩溃了)问题依然没有得到解决。
但是,功夫不负有心人,在经过自己无数次的尝试与失败之后,终于解决了这个问题,所以留下这篇随笔与大家分享,也给自己留下个纪念。
首先,说一下我的电脑系统与安装的软件:
(1)win7 64位 专业版
(2)PowerBuilder11.5
(3)Oracle Database 11g Release 2 (11.2.0.1.0) for Microsoft Windows (x64)
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win64soft-094461.html(oracle下载地址)
具体的软件下载过程与安装过程我这里就不在讲解,百度上都有
现在讲解我PB连接Oracle数据库的过程及出现的问题和解决方法
一、安装好PB和oracle之后,就可以在PB里连接oracle数据库了
具体连接步骤为:打开DB Profile—>选中O 10 Oracle 10g—>New(也可以直接点击右键选择New Profile...)—>填写好Connection中的Profile name,Server,Login ID,Password和System中的PowerBuilder Catalog Table Owner(注:该项与Connection中Login ID一样,如果不一样会出项如下错误:)


填好之后可以选择Preview中的Test Connection测试连接,但是我在测试的时候,就出现了如下错误:

原因:我安装的Oracle是64位的,里面的oci.dll也是64位的,PB需要要使用32位的oci.dll,所以连接时就无法加载oci.dll,
因此就需要下载一个32位的 instant client来支持PB调用。由此得到以下解决方案:
解决方案其实很简单,就三步
第一步:下载一个Instant Client for Microsoft Windows (32-bit) (注:这个是关键,一定要下32位的,千万别下成了下64位的)
(下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html)
如果下成了64位的还是会出现同样的问题,问题并不能得到解决(原因上面已经说清楚了)
第二步:将下载的压缩包解压得到instantclient_11_2文件夹,然后将文件夹复制到Oracle安装目录下的Product文件夹下,
以我的为例:放在D:\Oracle\app\zy\product里,即:D:\Oracle\app\zy\product\instantclient_11_2;
第三步:在Oracle安装目录下找到NETWORK文件夹,然后将整个NETWORK文件夹复制到D:\Oracle\app\zy\product\instantclient_11_2文件夹里,
(以我的为例:我的NETWORK文件夹在如下目录里D:\Oracle\app\zy\product\11.2.0\dbhome_1)
如果没有复制NETWORK文件到instantclient_11_2文件夹里夹或者复制得不全,都会出现如下错误:

完成以上三步之后,问题就解决了。重新打开PB,根据上面的连接步骤连接,就能连接成功了。
如下图:


如图就连接成功了,在Database中就能看到连接好的数据库了。
另外:在连接的过程中可能会遇到如下问题:

出现这个问题说明你监听器没开,解决办法很简单,到服务里开启就行
具体步骤:点击开始菜单—>在搜索框中输入“服务”—>点击打开—>找到以下两项,将其开启即可:

今天就和大家分享这些内容,如有不正确的地方,欢迎大家批评指正,关于以上问题,大家如有更好解决方案,欢迎大家前来交流!
更多推荐
所有评论(0)