我正在尝试搜索 2 台服务器(A 和 B)。服务器 A 有数据库 PROD_A,服务器 B 有 PROD_B。PROD_A 有 table1,PROB_B 有 table2。如何合并来自 2 个不同 SQL Server 的 2 个表?已经完成了链接服务器的设置,但我遇到了查询语法问题。谢谢。
问问题
84 次
3 回答
1
您可能需要一个 UNION 查询。
SELECT * FROM [serverA].[dbName].[table1]
UNION
SELECT * FROM [serverB].[dbName].[table2]
正如 Gordon 所指出的,如果是 SQL Server,您会希望将每个表称为完整的四部分名称。
于 2013-05-18T16:48:09.427 回答
1
您需要使用 sp_addlinkedserver(在此处记录)创建链接服务器。在服务器 A 上发出命令:
sp_addlinkedserver ServerB
然后使用以下命令访问远程表:
select *
from ServerB.Prod_B.dbo.table2
这是远程表的四部分命名约定。它假定远程表位于名为“dbo”的模式中。如果没有,请将其更改为正确的架构。
如果您有权限问题,请发布另一个问题。
如果您想在一个查询中访问它们,请将表放在一个查询中
select *
from ServerB.Prod_B.dbo.table2 join
Prod_A..table1
on . . .
于 2013-05-18T16:44:50.057 回答
0
您正在寻找的功能是 MUltiServer 查询,我在几年前使用过它。看看这篇文章。
于 2013-05-18T16:38:51.680 回答