SQL Server2005连接Oracle 11g详细步骤

时间:2022-01-15 19:31:22

我们知道SQL Server和Oracle其实很多原理都类似.特别是一些常用的SQL语句都是按照标准来.所以它们也可以有一定的互操作性的.这里讲一下,怎么配置让SQL Server连接一个Oracle.然后你在SQL Server中也能查看Oracle中表的内容.

我先说下我使用的环境:

操作系统: win7 64  ,SQL Server 2008 ,Oracle  Server 11gr1

另外进行配置前还要注意几点,是在SQL Server服务器所在地方进行配置.(客户端能不能我没试过,不确定).Oracle的server随便在哪无所谓了,只要你能连接得到就行.然后就是要装好oracle的客户端.

第一步 安装好oracle客户端,并配置好TNS信息

先配置好oracle的TNS连接信息.这个跟正常情况使用oraclep完全一样

ORCL =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 123.456.176.42)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = orcl)

)

)

 

第二步,配置odbc信息

配置好odbc连接信息,sql server肯定不能直接调用oracle的客户端去连接的,只能通过odbc的方式间接的去连.在你平时敲cmd的地方敲入odbc打开下面界面.你先去driver那地方看下有oracle的driver了不.装好了oracle的客户端的话肯定就会有的.

 

SQL Server2005连接Oracle 11g详细步骤

 

然后选user DSN,点Add ,选择上一个画面中看到的oracle driver.

 

SQL Server2005连接Oracle 11g详细步骤

 

出现这页面后,在Data Source Name随便输入一个名字,这个名字就要后面sql server要用到的.TNS Service Name的下拉列表中就是oracle中配置好的TNS信息,如果你开始没有配置的话这里就为空的.你选一个TNS名字后,可以点下test connection验证下看连接上了不.

SQL Server2005连接Oracle 11g详细步骤

 

第三步 在sql server中配置

在前面创建好odbc数据源后就可以在sql server中配置了啊.先打开management studio.在server objects下面有个Linked Servers,选中它并右击new linked server.打开如下页面.在linked server中输入一个名字,随便取的,在后面执行sql时会用到这名字.provider就选Oracle Provider for OLE DB.    product name就填oracle

Data source就是你开始配置odbc时取的名字.其他地方就不用管了.然后再点下Security会弹出另一个页面

 

SQL Server2005连接Oracle 11g详细步骤

 

 

在此页面最下面的地方输入用户名和密码,然后点OK

SQL Server2005连接Oracle 11g详细步骤

 

 

于是大功告成了.你在Linked Servers下面会看到ORA_ARWEN.下面就来执行几个SQL验证下

 

select * from openquery(ORA_ARWEN,'select sysdate from dual');

--select * from openquery这是固定的格式,然后在括号中先写上你刚创建好的名字.这里是ORA_ARWEN,然后用一个单引号把一个sql语句括起来.此Sql语句就是在Oracle中要执行的Sql语句.select sysdate from dual是oracle获取当前时间的sql.假如你连接的那用户arwen下面有表info,你也可以写select * from info