pb连接oracle屏蔽报错,PB6.5不安装ORACLE客户连接ORACLE8

最近在客户现场遇到一个奇怪的问题:oracle8i客户端未配置服务名即可通过PB程序连接oracle8i服务端。

pb版本为6.5,连接数据库时采用的是pb默认的sqlca对象。其中sqlca采用的都是oracle8的配置信息,按要求sqlca.servername应配置为tnsnames.ora中的服务名。

但其实际配置的服务名yfsimis(sqlca.servername=yfsimis)均无法找到,tnsnames.ora文件根本不存在。

最后百度了一下,发现“PB6.5不安装ORACLE客户端连接ORACLE8”的方法——tnsnames.ora藏在程序安装目录下。

以下是参考文章摘录:

-----------------------------------------------------------------------------------

参考:

请将以下文件拷贝到运行文件所在目录

一、ODBC动态库 :

ctl3d32.dll msvcrt40.dll odbc16gt.dll odbc32.dll odbc32gt.dll odbccp32.dll odbccr32.dll odbcint.dll

二、建立EXTRA子目录,将MSVCRT.DLL文件拷贝到该子目录下

EXTRA\MSVCRT.DLL

三、ORACLE动态库及配置文件

Tnsnames.ora CORE35O.DLL NASNSNT.DLL NAUNTSNT.DLL NCRNT.DLL Nlnt.dll NLSRTL32.DLL Nnfdnt.dll NNFNNT.DLL NSNT.DLL NTNT.DLL NTTNT.DLL CIW32.DLL Ora73.dll OTRACE73.DLL Sqlnet.ora Sqltnsnt.dll CORE35.DLL

四、PB动态库

pbvm70.dll pbdwe70.dll Pbo7370.dll PBO8470.DLL pbodb70.dll libjcc.dll

liulee(流方-琢磨Notes中...)

Oracle的客户端不安装让pb连上,我记得以前有帖子的,你可以搜索一下。

具体步骤。

1.先在某机器上安装好客户端(最好安装在c盘);

2.复制此客户端oracle目录下的所有文件作为独立的oracle安装文件;

3.搜索注册表,找到 HKey_Local_machine\software\oracle,把此项目及分支全部导出。

4.打包好你的pb程序,并独立打包好oracle客户端和注册表导出文件。

5.到干净的客户端,解开两个包,导入注册表文件,然后加入路径支持:

path=%path%;"c:\Ora817\bin"

这样处理,应该没有问题,因为我就是这样快速处理了几十个机器。

若不想搞注册表,你可以在程序中自己写注册表,构成Oracle客户端必要的注册表支持,至于路径,手工添加应该不难。

至于Oracle客户端那些文件不需要,这个不好说,你可以把那些bin目录下的所有exe删除,Oracle Document删除(7x兆)

至于定义Oracle服务,找到 Ora817\net80\admin\TnsName.ora,参照格式,程序中生成一个也不麻烦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值