要先注册一下吧,这个语句在局域网中我试过可以了,不知道广域网行不行?
exec sp_dropserver 'srv_lnk','droplogins'
exec sp_addlinkedserver  'srv_lnk','','SQLOLEDB','远程服务名'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'
SELECT *
FROM 
远程服务名.dbo.hy_fpmx

解决方案 »

  1.   

    --换换位置不就行了么?
    insert OPENROWSET('MSDASQL','DRIVER={SQL Server};SERVER=218.93.249.197;UID=hy;PWD=123',
       hzyl.dbo.hy_fpmx)
    SELECT *
    FROM hzyl.dbo.hy_fpmx
      

  2.   

    邹老大,我试过了呀!但是查询分析器报错!
    "服务器: 消息 7399,级别 16,状态 1,行 1
     OLE DB provider 'MSDASQL' reported an error.  
     [OLE/DB provider returned message: 不支持对 BLOB 值执行基于查询的插入或更新操作。]"
    不懂啥意思?
    感谢楼上各位捧场!
    请继续支持!
      

  3.   

    hsh_boy(逗号)的意思是让小弟建个远程链接服务器吧,我试了,是可以的!谢谢了!
    请问还有其他更简单的方法吗?
    就像"SELECT *
    FROM OPENROWSET('MSDASQL','DRIVER={SQL Server};SERVER=218.93.249.197;UID=hy;PWD=123',
       hzyl.dbo.hy_fpmx)"这样的,一条语句就可以实现了!
      

  4.   

    --改种方式
    insert OPENROWSET('sqloledb','218.93.249.197';'hy';'123',
       hzyl.dbo.hy_fpmx)
    select * from    hzyl.dbo.hy_fpmx
      

  5.   

    成功!感谢两位捧场!邹老大的语句就是我想要的那种,呵呵!感谢! hsh_boy(逗号),邹老大的语句更精简,收藏!
      

  6.   

    麻烦邹老大去下面这个贴子瞅,也是我开的,都两天了,还没结!
    http://community.csdn.net/Expert/topic/4018/4018707.xml?temp=3.747195E-02
      

  7.   

    邹老大,上面的SQL语句,为什么将"MSDASQL"换成"SQLOLEDB"就行了呢,小弟不甚明白?我过会会仔细看下联机帮助的!先提示提示!