if not exists(select from sys.servers where name='DBVIP')
begin
EXEC sp_addlinkedserver
@server='DBVIP',--被通路的伺服器别名(任意的名稱)
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='127.0.0.1' --要通路的伺服器(SQL SERVER執行個體名)
EXEC sp_addlinkedsrvlogin
'DBVIP', --被通路的伺服器别名
'false',
NULL,
'sa', --登陸連結伺服器的帳号
'123' --登陸連結伺服器的密碼
end
go --(go的作用)将語句分開執行,否則會報錯
--檢視已注冊的連結伺服器
exec sp_linkedservers
--查詢連結伺服器上的表
select * from DBVIP.database_name.dbo.table_name
go
--DBVIP.database_name.dbo.table_name 遠端伺服器完整表名(必須用部分表示)
--用完後可删除
if exists(select from sys.servers where name='DBVIP')
begin
Exec sp_droplinkedsrvlogin DBVIP,NULL --删除連結伺服器的登陸帳戶
Exec sp_dropserver DBVIP --删除連結伺服器
end
go
--檢視已注冊的連結伺服器
exec sp_linkedservers