SQL SERVER服務器鏈接連接(即sql server的跨庫連接)
一、如果你要訪問的數據庫,不在同一個服務器上,那麼需要用服務器鏈接:
EXEC sp_addlinkedserver @server='dblink名稱', @srvproduct='', @provider='SQLOLEDB', @datasrc='目標服務器地址' GO EXEC sp_addlinkedsrvlogin 'dblink名稱', 'false', NULL, '用戶名', '密碼' GO
小注:
1、上下兩部分的'dblink名稱'應該是一樣的。
2、下麵的用戶名與密碼應該是目標服務器上的用戶名及密碼。
3、使用的時候,隻需要修改'dblink名稱'、目標服務器地址、用戶名及密碼即可,其餘的地方不需要修改。
4、執行sql server的跨庫連接的時候,應該用sa賬戶登錄(本地數據庫也就是源數據庫的sa賬戶登錄)
5、如果需要鏈接不是數據庫默認實例,需要在@datasrc中指定 對應的數據庫實例
比如:需要訪問的數據庫實例是 SQLSERVERtest
則@datasrc需要這麼寫
@datasrc='192.168.120.119\SQLSERVERtest'
圖形化建立連接,如下圖:
二、測試服務器鏈接是否成功的兩種方式
1、SQL語句
--查詢遠程表 select * from [dblink名稱].遠程數據庫名.dbo.表
2、假如你新建的dblink名稱為test,如下圖:
創建好後,就在這個位置了,可以右鍵測試是否連通。
三、把本地表的數據,複製到遠程表
insert into [Link].遠程數據庫名.dbo.表(列的列表) select 列 from 本地表
四、把遠程表的數據,複製到本地表
insert into 本地表 select 列 from [Link].遠程數據庫名.dbo.表
最後更新:2017-04-03 12:55:10