A與B資料庫存在於同一個伺服器,資料互相取得相當容易。
假設A與B資料分散為兩台伺服器,B要取得A的資料時,
可以使用Linked Server(連結的伺服器)技術來做串接。
設定方法如下
--Setp 1-Create LinkServer
--USE MASTER
--GO
--//[1] Create Linkserver
Exec sp_addlinkedserver
@server='LDB_MEIHO_MIS', --//linkserver name.
@srvproduct='LDB_MEI_MIS', --//一般描述
@provider='SQLOLEDB', --//OLEDB Provider name, check BOL for more providers
@datasrc='sql2k8r2', --//遠端Server Name 192.168.11.100\sql2k8
@catalog='MEI_MIS' --//default database for linkserver
GO
--Step 2-Add linked server login
--//[2]Add linked server login
Exec sp_addlinkedsrvlogin
@useself='false', --//false=使用遠端使用者/密碼登入
--//true=使用本地端使用者/密碼連線遠端SERVER
@rmtsrvname='LDB_MEI_MIS', --//Linked server name
@rmtuser='admin' , --//遠端登入使用者
@rmtpassword='XXXX' --//遠端登入使用者密碼
GO
建立完成後可在 管理工具>伺服器物件>連結的伺服器 中,看到剛剛建立的物件。
取得LDB_MEI_MIS的資料,範例如下:
SELECT TOP 1 *
FROM LDB_MEI_MIS.MEI_MIS.dbo.UNIT
延伸:縮短資料庫物件名稱
寫預存程序時,若要使用資料表(LDB_MEI_MIS.MEI_MIS.dbo.UNIT),畫面上打了一大串,可讀性變得很差。
提供兩種方式
沒有留言:
張貼留言