【问题标题】:SQL Server Select Query - Specifying server as a parameterSQL Server 选择查询 - 将服务器指定为参数
【发布时间】:2012-06-11 20:13:50
【问题描述】:

我们有 2 台服务器 - 一台生产,一台测试/开发。我想针对生产数据运行一些 SQL 检查和更新,但将更改写入测试/开发服务器,这样人们就不会看到这些更改。

使用 SQL Server Management Studio,我运行了带有检查和更新的游标。我积极参与测试/开发。但是,我将查询编写如下。

SELECT * FROM [Production_Server].[Production_DB].[schema].[table]

我的印象是这会查看生产服务器,但事实并非如此。它着眼于测试/开发服务器。我在这两种环境中都有访问/权限。

有什么我忽略了许可明智的事情吗?或者只是它的预期工作方式?

【问题讨论】:

  • 您有名为Production_Server 的链接服务器吗?您确定它指向您认为的服务器吗?
  • 为了实现这一点,您需要在测试服务器上创建一个服务器链接,以便能够与生产服务器通信,正如上面的一条评论所建议的那样。见msdn.microsoft.com/en-us/library/aa213778%28v=sql.80%29.aspx
  • 不,我没有用于生产的链接服务器。我确定我在查询中指定了正确的服务器。我确实根据生产分析了结果,这就是我发现不一致的地方。我检查了测试/开发服务器,并针对测试/开发数据进行了检查。
  • 所以我尝试创建一个链接服务器,它说它已经存在。但我在演播室看不到。它们都是 SQL 服务器并且在同一个网络上应该没关系吧?
  • 运行 exec sp_linkedservers 之后。我发现 prod 服务器是测试/开发服务器的链接服务器。

标签: sql sql-server


【解决方案1】:

“[Production_Server]”必须是错误的链接服务器名称。

运行以下 sproc 以找到要使用的正确值

exec sp_linkedservers

【讨论】:

    猜你喜欢
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-10
    • 2021-08-07
    • 1970-01-01
    • 2013-05-13
    相关资源
    最近更新 更多