sql server中如何查询链接服务器

fiy 其他 127

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    要在SQL Server中查询链接服务器,可以使用以下步骤:

    1. 首先,确保已经创建了链接服务器。链接服务器是一个被连接到当前SQL Server实例的外部数据源。

    2. 使用sp_addlinkedserver存储过程来创建链接服务器。这个存储过程需要指定链接服务器的名称,以及提供链接服务器的类型和参数。例如,以下代码创建了一个名为"LinkedServerName"的链接服务器,连接到其他的数据库服务器:

    EXEC sp_addlinkedserver 
       @server='LinkedServerName', 
       @srvproduct='SQL Server',
       @provider='SQLNCLI', 
       @datasrc='ServerName\InstanceName';
    
    1. 如果链接服务器需要使用用户名和密码进行身份验证,可以使用sp_addlinkedsrvlogin存储过程来为链接服务器指定登录凭证。例如,以下代码为链接服务器"LinkedServerName"添加了一个使用Windows身份验证的登录凭证:
    EXEC sp_addlinkedsrvlogin 
       @rmtsrvname='LinkedServerName', 
       @useself='False',
       @locallogin=NULL, 
       @rmtuser='RemoteUserName', 
       @rmtpassword='RemotePassword';
    
    1. 链接服务器创建完成后,可以使用四段名来引用链接服务器中的对象。四段名的格式为LinkedServerName.Catalog.Schema.Object,其中LinkedServerName是链接服务器的名称,Catalog是链接服务器中的数据库名称,Schema是数据库中的模式名称,Object是要查询的对象名称。

    2. 使用SELECT语句来查询链接服务器上的表或视图。例如,以下代码查询了链接服务器"LinkedServerName"中的表"TableName":

    SELECT * 
    FROM LinkedServerName.DatabaseName.SchemaName.TableName;
    

    注意:在查询链接服务器时,需要确保链接服务器的权限设置正确,以允许当前SQL Server实例连接并查询链接服务器中的数据。

    1年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在 SQL Server 中,可以使用 sp_addlinkedserver 存储过程来创建和配置链接服务器。链接服务器允许从一个 SQL Server 实例连接到另一个 SQL Server 实例或者其他的数据源,这样就可以在一个查询中访问多个服务器的数据。

    下面是在 SQL Server 中查询链接服务器的步骤:

    1. 打开 SQL Server Management Studio (SSMS),连接到 SQL Server 实例。

    2. 在 Object Explorer 中展开服务器节点,右键单击“链接服务器”,然后选择“新建链接服务器”。

    3. 在“新建链接服务器”对话框的“常规”选项卡中,输入链接服务器的名称。这个名称将用于在查询中引用链接服务器。

    4. 在“服务器类型”下拉菜单中选择要链接的服务器类型。可以选择 SQL Server、Oracle、MySQL 等多种数据库类型。

    5. 在“弹出者下”输入链接服务器的网络地址。这个地址通常是服务器的 IP 地址或者主机名。

    6. 在“安全性”选项卡中,可以选择使用“be made using this security context”或者使用当前用户的登录名。如果需要使用指定的用户名和密码,可以选择“be made using this security context”并输入要使用的用户名和密码。

    7. 在“目录”选项卡中,可以选择链接服务器的数据库和默认的架构。

    8. 在“联接”选项卡中,可以配置链接服务器的联接选项。例如,可以配置超时时间、是否开启 RPC、是否开启数据捕获等。

    9. 配置完链接服务器后,点击“确定”按钮完成创建。

    完成上述步骤后,就可以使用链接服务器来查询数据了。在查询中,可以使用如下的语法来引用链接服务器:

    SELECT column1, column2
    FROM linked_server_name.database_name.schema_name.table_name
    

    其中:

    • linked_server_name 是在创建链接服务器时指定的链接服务器的名称。
    • database_name 是链接服务器上要查询的数据库的名称。
    • schema_name 是要查询的表所在的模式的名称。
    • table_name 是要查询的表的名称。

    通过这种方式,可以方便地在一个查询中访问多个服务器的数据,实现不同服务器之间的数据共享和联接操作。

    1年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在SQL Server中,可以通过以下步骤来查询连接的服务器:

    1. 在 SQL Server Management Studio (SSMS) 中打开查询编辑器,并连接到 SQL Server 实例。

    2. 使用以下语法查询服务器链接:

      SELECT * FROM sys.servers;
      

      这将返回所有已连接的服务器的详细信息。

      如果只想返回特定的链接服务器,可以使用以下语法:

      SELECT * FROM sys.servers WHERE is_linked = 1;
      

      这将返回所有已连接的链接服务器的详细信息。

    3. 在结果中,可以查看链接服务器的名称(name)、链接服务器的 ID(server_id)、链接服务器的类型(type)等详细信息。

      链接服务器的类型常见的几种类型:

      • SQL Server:表示链接服务器是一个 SQL Server 实例。
      • SQL Server Native Client 11.0:表示链接服务器是一个使用 SQL Server Native Client 11.0 驱动程序的 SQL Server 实例。
      • Oracle:表示链接服务器是一个 Oracle 数据库。
      • MySQL:表示链接服务器是一个 MySQL 数据库。
    4. 此外,可以使用以下语法来查询链接服务器的登录凭据:

      SELECT srv.name AS 'Linked Server Name',
             log.name AS 'Login Name',
             log.local_login AS 'Local Login'
      FROM sys.linked_logins ln
      JOIN sys.servers srv ON ln.server_id = srv.server_id
      JOIN sys.server_principals log ON ln.local_principal_id = log.principal_id;
      

      这将返回链接服务器的名称、登录凭据的名称以及本地登录用户。

    通过上述步骤,可以在 SQL Server 中查询链接服务器的详细信息。

    1年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部