一个 select 如何查询 sys 对象中的服务器名称

How does one select the server name in a sys objects query

在 T-SQL 中,我正在尝试做类似的事情:-

select * from [server_name].dbo.sys.objects

但我一直收到错误 'Invalid object name..'

我最终还是想比较两台服务器的所有数据库 (类似于以下内容..):--

Select * from [server1].dbo.Sys.Databases d1
cross join [server2].dbo.Sys.Databases d2
on d1.database_id = d2.database_id

使用这个。

select from [server_name].[base_name].sys.objects

您可以在单个查询中使用链接服务器 select 来自两个不同服务器上的数据库的数据。

您可以通过 SQL Server Mangement Studio 在 Server Objects --> Linked Servers 下设置链接服务器。将 [server1] 链接到 [server2] 后,您应该能够执行查询。