189 8069 5689

SQLServer链接服务器(Oracle,DB2)

SQL SQL Server 链接服务器(Oracle,DB2)

创新互联长期为千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为青田企业提供专业的成都做网站、网站设计,青田网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。

首先要安装.Net 连接Oracle、DB2的驱动,然后一步一步设置 或者通过SSMS图形界面实现

连接Oracle ,Create 方式SQL Server脚本
USE [master]
GO

/*Object: LinkedServer [自己为链接服务器起个名字] Script Date: 2016/6/1 21:13:09 */
EXEC master.dbo.sp_addlinkedserver @server = N’自己为链接服务器起个名字’, @srvproduct=N’Oracle’, @provider=N’OraOLEDB.Oracle’, @datasrc=N’Oracle用户名’
/* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N’自己为链接服务器起个名字’,@useself=N’False’,@locallogin=NULL,@rmtuser=N’用户名’,@rmtpassword=’########’

GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’collation compatible’, @optvalue=N’false’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’data access’, @optvalue=N’true’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’dist’, @optvalue=N’false’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’pub’, @optvalue=N’false’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’rpc’, @optvalue=N’true’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’rpc out’, @optvalue=N’true’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’sub’, @optvalue=N’false’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’connect timeout’, @optvalue=N’0’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’collation name’, @optvalue=null
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’lazy schema validation’, @optvalue=N’false’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’query timeout’, @optvalue=N’0’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’use remote collation’, @optvalue=N’true’
GO

EXEC master.dbo.sp_serveroption @server=N’自己为链接服务器起个名字’, @optname=N’remote proc transaction promotion’, @optvalue=N’true’
GO

连接DB类似
需要注意连接DB2,必须要求SQL Server的版本为企业版,或者评估版,其他版本一律不行。
查询方式例子
SELECT * FROM openquery(链接服务器名称,’select * from 表名’)
链接服务器传参数 可以这样(引用)
SET @Sql = ‘SELECT * from 表名 where SEQ_NUM =’+@V_SEQ_NUM
SET @Sql = ‘Update OPENQUERY(连接服务器名称, ”’ + REPLACE(@Sql, ””, ”””) + ”’) SET MSG_TYPE =”’+@V_MSG_TYPE+”’, MSGError =”’+@V_ERROR_MSG+”’ ’
EXEC(@Sql)
@V_SEQ_NUM 为为传入的参数

DB2 使用方法类似。


当前文章:SQLServer链接服务器(Oracle,DB2)
链接分享:http://jkwzsj.com/article/cjoooi.html