update y 
set y.lei=b.lei
from opendatasource 
(
'sqloledb',
'data source=www.yy.net;user id=sa;password='
).xg.dbo.kroa_wuliu_ruku as y inner join kroa_wuliu_ruku as b
on b.pinming=y.pinming and b.kuwei=y.kuwei and b.pihao=y.pihao  and 
(b.lei<>y.lei)提示:
服务器: 消息 170,级别 15,状态 1,行 1
对象名 'y' 无效。

解决方案 »

  1.   

    update opendatasource(
    'sqloledb',
    'data source=www.yy.net;user id=sa;password='
    ).xg.dbo.kroa_wuliu_ruku as y
    set y.lei=b.lei
    from  kroa_wuliu_ruku as b
    on b.pinming=y.pinming and b.kuwei=y.kuwei and b.pihao=y.pihao  and 
    (b.lei<>y.lei)
      

  2.   

    kelph() 
    这个不行,提示
    在关键字 'as' 附近有语法错误。
      

  3.   

    --那先创建链接服务器   
      exec   sp_addlinkedserver     'srv_lnk','','SQLOLEDB','www.yy.net'   
      exec   sp_addlinkedsrvlogin   'srv_lnk','false',null,'SA',''   
      go   
        
      --然后更新   
      update y 
    set lei=b.lei
    from srv_lnk.xg.dbo.kroa_wuliu_ruku as y inner join kroa_wuliu_ruku as b
    on b.pinming=y.pinming and b.kuwei=y.kuwei and b.pihao=y.pihao  and 
    (b.lei<>y.lei)
        
      --以后不再使用时删除链接服务器   
      exec   sp_dropserver   'srv_lnk','droplogins'
      

  4.   

    谢谢你了,OK了,不过为什么 opendatasource不行呢!!!!!!!
      

  5.   

    opendatasource不行呢!!!!!!!
    希望你看到后如果能实现得话,告我一下,或发到我得油箱是[email protected]
    谢谢了!!!!