sql server 使用鏈結伺服器遠端查詢

2022-07-01 16:51:09 字數 1522 閱讀 9980

--建立鏈結伺服器

exec sp_addlinkedserver 'erplink', ' ', 'sqloledb ', '遠端伺服器名或ip位址 '

exec sp_addlinkedsrvlogin 'erplink', 'false ',null, '使用者名稱 ', '密碼 '

--查詢示例

select * from erplink.資料庫名.dbo.表名

--匯入示例

select * into 表 from erplink.資料庫名.dbo.表名

--以後不再使用時刪除鏈結伺服器

exec sp_dropserver 'erplink', 'dbo_2018'

--連線遠端/區域網資料(openrowset/openquery/opendatasource)

--1、openrowset

--查詢示例

select * from openrowset( 'sqloledb ', 'sql伺服器名 '; '使用者名稱 '; '密碼 ',資料庫名.dbo.表名)

--生成本地表

select * into 表 from openrowset( 'sqloledb ', 'sql伺服器名 '; '使用者名稱 '; '密碼 ',資料庫名.dbo.表名)

--把本地表匯入遠端表

insert openrowset( 'sqloledb ', 'sql伺服器名 '; '使用者名稱 '; '密碼 ',資料庫名.dbo.表名) select *from 本地表

--更新本地表

update b set b.列a=a.列a from openrowset( 'sqloledb ', 'sql伺服器名 '; '使用者名稱 '; '密碼 ',資料庫名.dbo.表名)as a inner join 本地表 b  on a.column1=b.column1

--openquery用法需要建立乙個連線

--首先建立乙個連線建立鏈結伺服器

exec sp_addlinkedserver 'erplink', ' ', 'sqloledb ', '遠端伺服器名或ip位址 '

--查詢

select *  from openquery(erplink, 'select * from 資料庫.dbo.表名 ')

--把本地表匯入遠端表

insert openquery(erplink, 'select * from 資料庫.dbo.表名 ')   select * from 本地表

--更新本地表

update b set b.列b=a.列b from openquery(erplink, 'select * from 資料庫.dbo.表名 ') as a inner join 本地表 b on a.列a=b.列a

--3、opendatasource/openrowset

select *  from opendatasource( 'sqloledb ', 'data source=ip/servername;user id=登陸名;password=密碼 ' ).dbo_2018.dbo.base_cust

SQL Server 鏈結服務配置

a 鏈結sql server伺服器 1 使用 odbc 的 microsoft ole db 提供程式 exec sp addlinkedserver 別名 msdasql null,null,driver server 遠端名 uid 使用者 pwd 密碼 goexec sp addlinkeds...

sqlserver鏈結伺服器使用方法

exec sp addlinkedsrvlogin rmtsrvname serverontest useself false locallogin sa rmtuser sa rmtpassword passwordofsa 新增登入方式 以上兩個語句中,server為伺服器的別名,datasrc...

sql server 使用鏈結伺服器遠端查詢

pk select from sys.key constraints where object id object id tb fk select from sys.foreign keys where parent object id object id tb 建立鏈結伺服器 exec sp ad...