两个sql 服务器上的数据互相传输
现在需要两个sql 服务器上的数据互相传输、写的是存错过程建立作业让其自动执行、在执行的过程中如何用sql 判断两个服务器网络是否通呢?
------解决方案--------------------这个要建链接服务器:
exec sp_addlinkedserver 'DB32', ' ', 'SQLOLEDB', '192.168.3.x\SQLEXPRESS2008R2'
exec sp_addlinkedsrvlogin 'DB32', 'false',null, 'sa', 'xxxxxxx'
--查询
select * from 链接名称.数据库名.dbo.表名
--不用后删除
exec sp_dropserver '数据库名', 'droplogins'
--连接远程/局域网数据(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
>exec sp_addlinkedserver @server=’别名’,@provider=’sqloledb’,@srvproduct=’’,@datasrc=’远程服务器IP’