日期:2014-05-18  浏览次数:20446 次

两台不同的服务器,如何将一个数据库中的一个表的数据查询出来插入到另外一个服务器中的一个数据表中?
A和B两台机器,有相同结构的表
A:aTable
B: bTable
如何将aTable中的数据插入到bTable中,希望一条SQL完成!

Oracle有一个数据库链接,不知道SQL有没有类似的东东! 谢谢


------解决方案--------------------
可以的


SQL code

exec sp_addlinkedserver   'lnk ', ' ', 'SQLOLEDB ','实例名'
exec sp_addlinkedsrvlogin  'lnk ', 'false',null, 'sa ', 'sa ' 
go 
--导入
select * into 表from lnk.数据库名.dbo.表名
--删除链接服务器
exec sp_dropserver  'lnk ', 'droplogins ' 
go 
--若只是临时访问,可以直接用openrowset 
 
--导入
select * into 表from openrowset( 'SQLOLEDB ' 
, 'sql服务器名'; '用户名'; '密码' 
,数据库名.dbo.表名)

------解决方案--------------------
楼上正解
------解决方案--------------------
A和B两台机器,有相同结构的表 
A:aTable 
B: bTable 
如何将aTable中的数据插入到bTable中,希望一条SQL完成! 

Oracle有一个数据库链接,不知道SQL有没有类似的东东! 谢谢 
--------------------------
先注册一个从B到A的连接.
insert into [table] select * from servernameA.dbnameA.dboA.table


------解决方案--------------------
先建立连接服务器,再用一条SQL就搞定