在服务器Jack创建一台名为 Bruce 的链接服务器:
USE master
EXEC sp_addlinkedserver 'Bruce',N'SQL Server'
创建一个映射,使用帐号 Sa 和密码 Password 连接到链接服务器 Bruce:
EXEC sp_addlinkedsrvlogin 'Bruce', 'false', NULL, 'Sa', 'Password'假如两表结构一样,导数据:
insert into Bruce.DBBruce.dbo.TableBruce
select top 10 * from TableJack
USE master
EXEC sp_addlinkedserver 'Bruce',N'SQL Server'
创建一个映射,使用帐号 Sa 和密码 Password 连接到链接服务器 Bruce:
EXEC sp_addlinkedsrvlogin 'Bruce', 'false', NULL, 'Sa', 'Password'假如两表结构一样,导数据:
insert into Bruce.DBBruce.dbo.TableBruce
select top 10 * from TableJack
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'
go
-----再用
insert into tablebruce (col1,col2....)
selectr top 10 col1,col2,...... srv_lnk.dbjack.dbo.tablejack
insert openrowset('sqloledb','Jack';'sa';'密码',DBJack..TableJack)
select top 10 * from openrowset('sqloledb','Bruce';'sa';'密码',DBBruce..TableBruce)
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'
go--查询示例
select * from srv_lnk.数据库名.dbo.表名--导入示例
select * into 表 from srv_lnk.数据库名.dbo.表名go
--处理完成后删除链接服务器
exec sp_dropserver 'srv_lnk','droplogins'
--如果只是临时访问,可以直接用openrowset
--查询示例
select * from openrowset('SQLOLEDB'
,'sql服务器名';'用户名';'密码'
,数据库名.dbo.表名)
--导入示例
select * into 表 from openrowset('SQLOLEDB'
,'sql服务器名';'用户名';'密码'
,数据库名.dbo.表名)