通过 SQL Server 视图访问另一个数据库服务器表的方法

今天项目经理跑过来对我大吼大叫说什么之前安排让我做一大堆接口为什么没做,我直接火了,之前明明没有这个事情……

不过事情还要解决,好在两个项目都是用的sqlserver,可以通过跨数据库视图来快速解决问题,省去了一大堆工作。如何做呢?看下文吧。

 

正 文:

有的时候,我们要访问其它 SQL Server的数据库,我们可以通过一个视图使用 OPENDATASOURCE (SQL Server 2000 以上版本支持) 来完成。
 
例如:

Create VIEW [dbo].[vTableName]

AS
Select * 
FROM OPENDATASOURCE(
    'SQLOLEDB', 
    'PWD=loginPassword;UID=otherServerUserID;Initial Catalog=databaseName;SERVER=dataServer'
).databaseName.dbo.[tableName]
GO
 
通过UID、PWD的身份访问另一个数据库服务器。
 
其中
PWD : 是指另一个数据库服务器的登录密码
UID : 是指另一个数据库服务器的登录ID(用户名)
Initial Catalog : 指明数据库
SERVER : 指明服务器
 
我们可以如下方法读取数据:
Select * FROM [dbo].[vTableName]
posted @ 2015-12-16 14:34  剑握在手  阅读(4706)  评论(0编辑  收藏  举报
返回顶部↑