【问题标题】:Connection string for Linked Servers Database链接服务器数据库的连接字符串
【发布时间】:2018-04-24 06:32:07
【问题描述】:

我在我的 SQL Server 2012 中创建了一个“链接服务器”。现在我想从“链接服务器”下的表中获取数据。 那么为此,连接“链接服务器”下的数据库的连接字符串是什么?

在控制台应用程序中我已经尝试过了。

<add key="smartdb" value="Data Source=192.168.1.141; Initial Catalog=mydb;User Id=sa;Password=sa123" />

但它不起作用。我不知道在哪里设置数据库名称,在“链接服务器”下。

【问题讨论】:

标签: sql-server


【解决方案1】:

您必须使用四部分查询来连接到您的链接服务器:

<server-name>.<database-name>.<schema-name>.<table-name>

所以在你的连接字符串中改变数据源。

【讨论】:

  • 是的。首先我需要一个连接。那么在连接字符串中如何设置数据库名称。
  • 您说,您已经创建了链接服务器...您可以在那里指定初始目录,或者您可以将远程服务器上的用户设置为默认数据库。您可以在查询中指定数据库(使用 3 个或 4 个部分名称)。 OPENQUERY 没有“数据库”参数,当您使用 4 个部分名称时,该名称已经包含数据库名称。那么你到底做了什么和工作,具体的问题是什么?
  • @MarufAhammedJuwel 首先连接到您的父 sql 服务器,您在其中创建了链接的 sql 服务器,然后从那里您将查询作为打开的查询运行并获取数据。打开查询:docs.microsoft.com/en-us/sql/t-sql/functions/…mssqltips.com/sqlservertip/1757/…
【解决方案2】:

试试这个:

   <add name="sqlConnection" connectionString="your connection string" providerName="System.Data.SqlClient"/>

告诉我它是否有效。

【讨论】:

    【解决方案3】:

    我通过放置初始目录“master”找到了解决方案。然后我可以查询Like:

    <add key="smartdb" value="Data Source=192.168.1.141; Initial Catalog=master;User Id=sa;Password=sa123" />
    

    并查询

    select * from MYLINK.SPL.dbo.Departments
    

    现在我可以得到预期的结果了。

    【讨论】:

      猜你喜欢
      • 2016-11-12
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      • 1970-01-01
      • 2013-08-25
      • 1970-01-01
      • 2013-07-09
      • 1970-01-01
      相关资源
      最近更新 更多