mfc通过odbc连接oracle,如何使用firedac设置到oracle的odbc连接?

我可以通过本机驱动程序成功地连接到Oracle,但无法使用ODBC连接。Oracle 11g客户端软件安装在我的Windows 7 64位计算机上,以及从

Instant Client Downloads for Microsoft Windows 32-bit

.

首先让我描述一下成功的连接:

TNSNames.ORA

包含Oracle 10安装的数据:

# TNSNAMES.ORA Network Configuration File: C:\oracle\ora92\network\admin\tnsnames.ora

# Generated by Oracle configuration tools.

VS2003-2005-10.TimeTellBV.nl =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = VS2003-2005-10)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = Orclvs10)

)

)

我设置了

TFDConnection

具有

DriverName := S_FD_OraId;

Params.Database := 'VS2003-2005-10';

或者,我可以绕过

TNSNAMES.ORA

直接指定:

DriverName := S_FD_OraId;

Params.Database := '(DESCRIPTION=(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = VS2012-2012.timetellbv.nl)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl12.timetellbv.nl) ))';

(如您所见,这是另一个不在

特恩斯纳姆斯·奥拉

)

现在通过odbc的失败尝试

安装了两个32位Oracle ODBC驱动程序:

Microsoft ODBC for Oracle版本6.01.7601.19135-我想这是Win7操作系统附带的

instantclient_11_2版本11.02.00.04中的oracle-我从上面提到的源手动安装了它(按照

Oracle Instant Client ODBC Release Notes

)中。

我已经通过这些驱动程序设置了两个系统DSN,但都不起作用。

版本6 ODBC驱动程序,为其提供“server”的tsnames.ora条目名:

CaDMW.png

以及版本11 Oracle驱动程序idem:

WQ8tq.png

对于第二个,我添加了另一个条目到

特恩斯纳姆斯·奥拉

,因为那个对话框显然建议我必须浏览那个文件:

VS2012-2012.TimetellBV.nl =

(DESCRIPTION=

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = VS2012-2012)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = orcl12.timetellbv.nl)

)

)

我设置了

TFD-连接

具有

DriverName := S_FD_ODBCId;

Params.Add('DataSource=' + lODBCName); // The ODBC DSN Name

Params.Database := lDataSection.Values[INISTRING_DATABASENAME];

此代码和de 32位odbc管理中的“测试”按钮都失败,错误为:

Unable to connect

SQLState IM003

The specified driver could not be loaded due to system error 127: cannot find procedure

(Oracle in instantclient_11_2; D:\app\jan\product\11.2.0\client_1\SQORA32.dll)

miQTO.png

该文件夹是安装Oracle客户端软件的位置,它包含

SQORA32.DLL

(和其他人)在我的系统路径中。

我已经尝试了各种各样的变化,包括/不包括域名,数据库名称等,没有成功。

如何正确设置ODBC连接以连接到Oracle,以便通过FireDAC在Delphi东京32位应用程序中使用?

同样没有帮助的是:

重新安装Visual Studio 2013 32位可再发行版本

将sqora32.dll复制到windows syswow64文件夹

将ORACLE_HOME环境变量设置为D:\ app\jan\product\11.2.0\client_1\

将TNS U ADMIN环境变量设置为D:\ app\jan\product\11.2.0\client U 1\

将Quala32.DLL改名为SqORA32.DLL

将日期为2011年3月11日的c:\windows\syswow64\mfc42.dll替换为日期为2011年4月27日的Oracle主文件夹中的新的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值