无法在 SQL Server 2014 上创建到 Oracle 11g 的链接服务器连接

Can't create a linked server connection on SQL Server 2014 to Oracle 11g

我正在尝试在 SQL Server 2014 中创建链接服务器。我正在尝试连接到 Oracle 11g 服务器。我在 Oracle 提供的 OraClient 11g 连接中使用 Oracle。 ODBC 连接已在服务器上建立,我可以测试连接,因此它可以正常工作 Windows。

我右键单击数据库中的链接服务器并选择其他数据源。那里没有 Oracle 提供商选项。如果我尝试使用适用于 ODBC 驱动程序的 Microsoft OLE DB 提供程序强制它,连接 returns 一条错误消息显示 "An exception occurred while executing a t-sql statement. Cannot initialize the data source object of OLE DB provider "MSDASQL" for Linked server "Server"。OLE链接服务器 "Server" 的数据库提供程序 "MSDASQL" 返回消息“[Microsoft][ODBC 驱动程序管理器] 数据源名称未找到且未指定默认驱动程序。”(Microsoft SQL 服务器,错误:7303 )

看来我遗漏了一些东西,sql 服务器识别连接的一种方式,但我不知道是什么。任何指导将不胜感激。

根据SQL Mag

Before you can create a SQL Server 2008 linked server to Oracle, you need to install the Oracle client software on the SQL Server 2008 system. The Oracle client software provides the network libraries that are required to establish connectivity to the Oracle database. In this case, the Oracle 11g database server is already installed and functional. Installing the Oracle client software on the SQL Server system enables it to connect to the existing Oracle server.

文章适用于2008/11g,原理在2014/11g上应该是一样的

我花了几天时间发现了这个:

https://nampark.wordpress.com/2011/01/20/installing-64-bit-odac-11-2-to-microsoft-sql-server-2008-r2-x64-for-replication/

它详细介绍了如何安装我需要的缺失组件。此解决方案的缺点是它需要通过 cmd window 完成安装。我没有太多经验,但这次演练确实为我提供了完成它所需的细节。这清除了我收到的错误消息。