通过MSSQL连接服务器连接至Oracle数据库

有很多时候,我们需要MSSQL与Oracle进行跨库查询或数据交互。本篇随笔将阐述如何通过MSSQL的连接服务器连接至Oracle数据库,并且读取数据的示例。

具体步骤

首先需要到Oracle的官网下载Oracle Client(简称OCT),也就是通常大家所说的Oracle客户端。OCT的作用就是连接MSSQL与Oracle的一个桥梁,有了OCT就可让MSSQL与Oracle互相通信。

OCT的官网下载地址为: ,如下图:

通过MSSQL连接服务器连接至Oracle数据库

当前的Oracle最新版本为12C,将页面向下拖动,会发现两个OCT的版本。

通过MSSQL连接服务器连接至Oracle数据库

分别为32位OCT和64位OCT。根据你的系统情况,安装对应的版本即可。

博主的相关版本如下

服务器

 

操作系统

 

数据库

 

Server1

 

Windows Server 2012 R2 x64

 

Microsoft Sql Server 2014 Enterprise x64

 

Server2

 

Windows Server 2012 R2 x64

 

Oracle 10g

 

细心的人可能会问,为什么你的Oracle 是10g,你要选择12c版本的OCT,这个原因主要是因为博主有高版本强迫症。

由于Server1是64位操作系统,所以选择了64位的OCT进行安装。安装过程很简单,运行setup即可,这里就不再赘述。

安装完成之后最好重启一次服务器,避免发生未知错误。

重启之后,通过OCT的Net Manager进行Oracle连接配置。如下图:

通过MSSQL连接服务器连接至Oracle数据库

配置好之后通过连接测试,测试一下是否正确,如果连接成功,表示配置正确无误。

打开MSSQL,在连接服务器的访问接口中,你会发现多出了一个OraOLEDB.Oracle的接口。如下图:

通过MSSQL连接服务器连接至Oracle数据库

该接口的具体配置如下:

通过MSSQL连接服务器连接至Oracle数据库

这里注意,"允许进程内"项必须勾选,否则将无法连接到oracle

最后一步,需要新建连接服务器,具体步骤如下图所示:

通过MSSQL连接服务器连接至Oracle数据库

通过MSSQL连接服务器连接至Oracle数据库

其中连接服务器名称为MSSQL连接服务器的名字,提供程序为Oracle Provider for OLE DB,该Provider是在安装完成OCT之后才会有。产品名称无关紧要,博主这里填写的是具体的Oracle版本。最重要的是数据源参数,博主填写的是tpemr,这个参数的来源是在OCT的Net Manager中配置的服务命名(如下图中服务器命名为tpemr),如果填写错误或者Net Manager中配置错误,都将导致无法连接到Oracle。

通过MSSQL连接服务器连接至Oracle数据库

之后在安全性选项卡中配置tpemr相关的Oracle用户名和密码。之后确定即可,如下图:

通过MSSQL连接服务器连接至Oracle数据库

之后在MSSQL的连接服务器中将会出现一个新的TPEMR连接服务器。通过测试连接可测试连接是否正常,如下图:

通过MSSQL连接服务器连接至Oracle数据库

通过MSSQL连接服务器连接至Oracle数据库

通过MSSQL连接服务器连接至Oracle数据库

至此,MSSQL的连接服务器连接至Oracle数据库完成。

通过MSSQL的连接服务器查询Oracle数据

查询的方法很简单,基本语法与MSSQL连接MSSQL的连接服务器的查询语法类似。

基本方式为 select * from [连接服务器名称]..[数据库所有者名称].[表名]

其余的CRUD操作和这种方式类似。但是前提是你的Oracle账户具备这些权限。

后续

本博文具体的阐述了建立MSSQL连接服务器连接至Oracle数据库的方法,最后说明了一下跨库查询的方式。希望对你有所帮助。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/165a500e8938c20eb317ea290e9d1b2c.html