前面是建立与服务器B,服务器C的连接
Exec serverB.DatabaseName.dbo.myproc
Exec serverC.DatabaseName.dbo.myproc

解决方案 »

  1.   

    exec sp_addlinkedserver
    @server='AnotherServer',
    @srvproduct='',
    @provider='MSDASQL',
    @provstr='Driver={SQL SERVER};SERVER=IP;UID=sa;PWD=;Database=databasename'select * from  AnotherServer.master.dbo.sysobjects
      

  2.   

    没有明白我的意思,我是要在A 上调用B和C服务器上的存储过程,不是在A 服务器来执行存储过程查询B,C 上的数据
      

  3.   

    --创建链接服务器
    exec sp_addlinkedserver  'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'
    exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'
    go--调用示例
    exec srv_lnk.数据库名.dbo.存储过程名(参数)
      

  4.   

    在A服务器SQL查询分析器中执行:
    exec sp_addlinkedserver  'a','','SQLOLEDB','B服务器的IP地址'
     exec sp_addlinkedsrvlogin 'a','false',null,'用户名','密码' exec sp_addlinkedserver  'b','','SQLOLEDB','C服务器的IP地址'
     exec sp_addlinkedsrvlogin 'b','false',null,'用户名','密码'然后打开A服务器的企业管理期/安全性/连接服务器,打开a,b服务器的属性,将服务器选项里面
    的RPC和RPC输出分别钩上,再在A服务器里执行:exec a.数据库名.dbo.存储过程名
    exec b.数据库名.dbo.存储过程名
      

  5.   

    在查询分析器中执行,提示:
    "服务器: 消息 7411,级别 16,状态 1,行 2
    服务器 'srv_lnk' 没有为 RPC 的目的而配置。
    "