使用一个SQL Server查询从不同服务器上的不同数据库获取数据

> Server1:Prod,托管DB1
> Server2:Dev托管DB2

有没有办法查询生活在具有相同选择查询的2个不同服务器上的数据库?我需要使用查询将Prod中的所有新行带到dev
如下.我将使用SQL Server DTS(导入导出数据实用程序)来做这件事.

Insert into Dev.db1.table1
    Select * 
    from Prod.db1.table1
    where table1.PK not in (Select table1.PK from Dev.db1.table1)
最佳答案
创建链接服务器是我所知道的唯一方法.如果您只是尝试将所有新行从prod添加到dev,那么为什么不创建该特定表的备份并将其拉入dev环境,然后从同一服务器和数据库中编写查询?

当然,这是一次性使用和重新发生实例的痛苦,但如果它是一次性的话,那么我建议这样做.否则在两者之间建立链接服务器.

要在SQL中备份单个表,请使用SQl Server导入和导出向导.选择prod数据库作为数据源,然后仅选择prod表作为源表,并在dev环境中为目标表创建一个新表.

这应该可以满足您的需求.

转载注明原文:使用一个SQL Server查询从不同服务器上的不同数据库获取数据 - 代码日志