程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server使用鏈接服務器遠程取數據

SQL Server使用鏈接服務器遠程取數據

編輯:關於SqlServer

由於最近開發的一個查詢系統,基本是在其它服務器的,所以在本地服務器設計了中間,用來存從遠程服務器取數據!

一種方法是通過,OPENDATASOURCE來遠程讀取數據!

SELECT  *
FROM   OPENDATASOURCE(
'SQLOLEDB',
'Data Source=ServerName;User ID=MyUID;Password=MyPass'
).Northwind.dbo.Categories

但是遠程的服務器不能確認,比較麻煩,如果要實現,只有把連接信息保存到服務器,通過動態SQL(EXEC或sp_excute_sql來達到目的)。

另一種方法就是添加鏈接服務器。

sp_addlinkedserver @server = N'鏈接服務器名',
@srvproduct = N' ',
@provider = N'SQLOLEDB',
@datasrc = N'遠程服務器IP',

添加鏈接服務器登錄:

sp_addlinkedsrvlogin
[ @rmtsrvname = ] '鏈接服務器名'
[ , [ @useself = ] 'false' ]
[ ,[ @locallogin = ] '本地登錄名' ]
[ , [ @rmtuser = ] '遠程登錄名' ]
[ , [ @rmtpassword = ] '遠程密碼' ]

這樣訪問遠程服務器的就可以通過SQL:

select * from 鏈接服務器名.遠程數據名.遠程所有者.遠程表名

不用管遠程服務器的地址及登錄名,只能鏈接服務器名。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved