sql Server 数据库中某表的数据全部更新到另一电脑某sql数据库某表。 ( 积分: 50 )

  • 主题发起人 主题发起人 分飞
  • 开始时间 开始时间

分飞

Unregistered / Unconfirmed
GUEST, unregistred user!
如果&nbsp;将<br>sql&nbsp;Server&nbsp;数据库中某表的数据全部更新到另一电脑某sql&nbsp;server数据库某表<br>如:<br>&nbsp;&nbsp;&nbsp;A&nbsp;192.168.0.1机器写&nbsp;存储过程&nbsp;把&nbsp;&nbsp;数据库x中的&nbsp;x1&nbsp;复制(覆盖记录)到<br>&nbsp;&nbsp;&nbsp;B&nbsp;192.168.0.2机器&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;数据库Y中的Y1。<br>(A&nbsp;机器&nbsp;可完全访问B机器数据库)
 
1.在A机器上:SQL企业管理器-&gt;新建&nbsp;SQL&nbsp;SERVER&nbsp;注册(根据向导),<br>&nbsp;&nbsp;新注册的服务器为&nbsp;192.168.0.2<br>2.存储过程:<br>······<br>&nbsp;&nbsp;delete&nbsp;from&nbsp;192.168.0.2.Y.Y1&nbsp;where&nbsp;field1&nbsp;in&nbsp;(select&nbsp;field1&nbsp;from&nbsp;x1)<br><br>&nbsp;&nbsp;insert&nbsp;into&nbsp;192.168.0.2.Y.Y1(field1,field2,...)&nbsp;<br>&nbsp;&nbsp;select&nbsp;(field1,field2,..)&nbsp;from&nbsp;x1<br>······<br>注:field1为表中可以确认某行的列
 
192.168.0.2.Y.Y1&nbsp;不可用
 
首先要开启两个服务器的服务Distributed&nbsp;Transaction&nbsp;Coordinator。<br>然后要保证能相互ping通对方的机器名。<br>然后在你本地&nbsp;SQL&nbsp;Server服务器上建立一个远程机器的【链接服务器】,你可以在企业管理器》安全性》链接服务器上点右键选择创建链接服务器,假设该链接服务器取名(server),然后你可以在本地用&nbsp;server.数据库名.dbo.表名引用对方服务器上的表,视图等。
 
1.在A机器上:SQL企业管理器-&gt;新建&nbsp;SQL&nbsp;SERVER&nbsp;注册(根据向导),<br>&nbsp;&nbsp;新注册的服务器为&nbsp;192.168.0.2<br>2.存储过程:<br>······<br>&nbsp;&nbsp;delete&nbsp;from&nbsp;[192.168.0.2].Y.Y1&nbsp;where&nbsp;field1&nbsp;in&nbsp;(select&nbsp;field1&nbsp;from&nbsp;x1)<br><br>&nbsp;&nbsp;insert&nbsp;into&nbsp;[192.168.0.2].Y.Y1(field1,field2,...)&nbsp;<br>&nbsp;&nbsp;select&nbsp;(field1,field2,..)&nbsp;from&nbsp;x1<br>······<br>注:field1为表中可以确认某行的列
 
CREATE&nbsp;PROCEDURE&nbsp;&nbsp;aa&nbsp;&nbsp;&nbsp;&nbsp;AS<br>delete&nbsp;from&nbsp;[192.168.0.2].Y.Y1&nbsp;<br>GO<br><br><br>lovedesky,我的机器sql可以访问192.168.0.2&nbsp;&nbsp;<br>但现在提示&nbsp;<br>对象名&nbsp;192.168.0.2.Y.Y1'&nbsp;无效。
 
使用数据库分发,源数据库做发布服务器,另一个做收服务器
 
数据库名和表名之间要加数据库所有者&nbsp;(dbo)的,[远程数据库].数据库名.dbo.表名<br>并且必须要注册了【链接服务器】才能相互引用的。
 
后退
顶部