2

我有一个 MSSQL Server 2008 数据库“DBLive”,它链接到三个不同的外部服务器 [ExtServer1、ExtServer2、ExtServer3],它们都在 sys.servers 中定义。有几个存储过程引用外部服务器上的存储过程或表,例如'SELECT TOP 1 @SomeId = Id FROM [ExtServer1].TheExtDB.dbo.SomeTable WHERE ...'。

这是挑战 - 如果我想在服务器上放置一个数据库 - “DBTest”,它是“DBLive”的相同副本 - 但它应该连接到不同的外部服务器 - 我如何使 [ExtServer1 .. 3] 指向“DBLive”和“DBTest”的不同外部服务器?

如果无法做到这一点 - 以这样的方式链接外部数据库的首选方式是什么,即同一数据库的两个实例可以拥有自己的外部服务器引用 - 而存储过程没有差异?

4

1 回答 1

1

您可能想在这里使用同义词。请参阅此Microsoft Connect 问题中建议的解决方法(并在您在那里时对问题进行投票)。

于 2011-05-11T15:30:49.100 回答