使用sql-server进行分布式查询

2008-04-02 10:31:25来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

  能够使用sql-server企业管理器进行建立,注意其中的rpc及rpc out两项,也能够使用sql语句来完成定义,主要涉及到三个存储过程sp_addlinkedserver,sp_serveroption和sp_addlinkedsrvlogin,以下是三个存储过程的语法:

  sp_addlinkedserver

  创建一个链接的服务器,使其允许对分布式的、针对 OLE DB 数据源的异类查询进行访问。在使用 sp_addlinkedserver 创建链接的服务器之后,此服务器就能够执行分布式查询。假如链接服务器定义为 Microsoft® SQL Server™,则可执行远程存储过程。

  语法

  sp_addlinkedserver [ @server = ] 'server'

  [ , [ @srvproduct = ] 'product_name' ]

  [ , [ @provider = ] 'provider_name' ]

  [ , [ @datasrc = ] 'data_source' ]

  [ , [ @location = ] 'location' ]

  [ , [ @provstr = ] 'provider_string' ]

  [ , [ @catalog = ] 'catalog' ]

  例如:

  sp_addlinkedserver 'ServerName','','SQLOLEDB','dbconn',null,'driver={sql server};server=192.168.1.181;uid=sa,pwd=;'

  此处ServerName为自定义名称,dbconn为定义的odbc数据源

  一般使用的参数如下:

  @server “LINKED SERVER”

  @srvproduct “Product name”

  @provider “Provider”

  @datasrc “Data source”

  二、配置服务器选项

  使用 sp_serveroption 过程,所要使用的参数如下:

  @server “Linked server”

  @optname “RPC”或“RPC OUT”

  @optvalue True 或 False

  三、添加Login

  使用 sp_addlinkedsrvlogin 过程,所要使用的参数如下:

  @rmtsrvname “Linked server”

  @useself True 或 False

  @locallogin 本地LOGIN

  @rmtuser 远程用户

  @rmtpassword 远程用户口令

  全部完整的示例如下:

  EXEC sp_addlinkedserver 'test','','SQLOLEDB','test',null,'driver={sql server};server=ipaddress;uid=sa,pwd=;'

  exec sp_serveroption N'test', N'rpc out', N'true'

  exec sp_serveroption N'test', N'rpc', N'true'

  exec sp_addlinkedsrvlogin 'test','False',null,'sa',''

  访问能够使用如下语句:select * from test.pubs.dbo.tb_maintab

  以上在windows2000,sql-server2000测试通过


标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 数据库人员手边系列:SQL Server性能分析参数

下一篇: SQL中的五种数据类型