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

查询分析器中批量修改远程数据(在线等)
我做了一组语句:
begin   transaction
update   OPENDATASOURCE   ( 'SQLOLEDB ',   'Data   Source=192.168.1.1;User   ID=sa;Password=).test_dbo.dbo.test_tab   set   test   =   ' '   where   test   =   ' '
update   OPENDATASOURCE   ( 'SQLOLEDB ',   'Data   Source=192.168.1.1;User   ID=sa;Password=).test_dbo1.dbo.test_tab   set   test   =   ' '   where   test   =   ' '
commit   transaction
这样我是打开了两次同一个连接。有没有办法可以只打开一次,第二次可以引用第一次打开的连接。
不使用链接服务器,因为需要太多的链接服务器了。必须在一个事物内。
望高手指教!!!!

------解决方案--------------------
建立好所有的连接.

update 服务器A.用户A.表名A
set 字段A = 服务器B.用户B.表名B.字段B
where 服务器A.用户A.表名A.ID = 服务器B.用户B.表名B.ID
------解决方案--------------------
赞成 dawugui(潇洒老乌龟) 的意见
------解决方案--------------------
怎样建立好所有连接???
//建立好所有的链接服务器
------解决方案--------------------
企业管理器--> SERVERS--> 安全性--> 链接服务器---> 右健新建
------解决方案--------------------
ding
------解决方案--------------------
sp_addlink……(具体怎么写忘记了,去查查吧),添加连接服务器,事务结束删除
------解决方案--------------------
如果你不想建链接服务器的话,只能这个样子了