2017-02-16 166 views
0

您好我正在尝试使用通过Excel直接数据库连接使用SQL开发人员编写的一些SQL代码。不幸的是,我每次尝试收到的错误消息是:无法创建与Oracle服务器的直接连接(Excel)

“试图加载Oracle客户端库时,抛出BadImageFormatException。在安装了32位Oracle客户端组件的64位模式下运行时,会发生此问题。

我在我的电脑上辛苦安装了Oracle 64位客户端,所以至少应该工作。不幸的是,我花了两天的时间在互联网上查找解决方案,但没有成功。有谁知道我可以如何强制Excel使用我的64位客户端或以其他方式避免此错误?

更新: 尽管我尽了最大的努力,但问题仍在我的TNSNAMES文件中,因为我无法使用SQL Plus进行连接。以下是我的连接字符串的编辑版本。省略的细节是正确的,因为它们与我用于SQL Developer的相同。我错过了什么吗?

DB1 = 
(DESCRIPTION = 
(ADDRESS_LIST = 
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521)) 
) 
(CONNECT_DATA = (SID = SID1)(SERVER = DEDICATED) 
) 
) 

DB2 = 
(DESCRIPTION = 
(ADDRESS_LIST = 
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521)) 
) 
(CONNECT_DATA = (SID = SID2)(SERVER = DEDICATED) 
) 
) 
+0

大概你会得到一个类似的问题,运行64位Oracle客户端组件的32位Excel;也许你是这么做的,错误信息太泛化了? –

+0

[可能的重复](http://stackoverflow.com/q/24104210/266304) –

回答

0

显然,它在您的机器设置或配置中很小。

我建议你看看你的机器的PATH环境变量。它可能指的是旧版本的Oracle服务器Oracle客户端组件

确保你知道你用什么来从Excel,JDBC或ODBC访问Oracle?

它总是让我们疯狂的小细节。

+0

我手动改变了PATH环境变量,将它指向我的64位客户端,所以我相当确信这不是问题。我正在使用ODBC。 – Raven

+0

您是否在管理工具中检查了您的ODBC数据源设置?验证您是否可以通过ODBC连接到Oracle服务器。 –

+0

我努力通过ODBC数据源菜单访问它。我添加了数据源以及用于通过SQL Developer连接的连接细节(必须在流程中编写我自己的tnsnames.ora文件)。但我得到一个“ORA-12154:TNS:无法解析指定的连接标识符”错误。 我可以通过SQL Developer连接到数据库,所以在Excel中可以使用这种情况吗? – Raven

0

您是否看到过这些答案?

SQL Server 2012 connectivity to Oracle

Getting MS Office 2013 (32 bit) Excel and Access to connect to Oracle database when both 32 and 64 clients are installed

,我发现这个链接,太复杂,一切都复制到了答案:

Connect To Oracle Via ODBC Driver

而且你可以尝试使用连接到Oracle使用ODBC ODAC或Oracle客户端,从Oracle网站下载ODAC112030_x64.zip。这里有一个关于如何安装它的链接SETTING UP AN ORACLE ODBC DRIVER AND DATA SOURCE

+0

当我在zip文件中找到可执行文件时,我几乎为喜悦而哭泣。我一直试图从管理员工具建立数据连接,但我仍然收到“ORA-12154:TNS:无法解析指定的连接标识符”错误。我看不到我的TNSNAMES.ORA存在问题,并且我知道详细信息是正确的,因为我可以通过JDBC通过SQL Developer进行连接。 – Raven

相关问题