Как выбрать имя сервера в запросе объектов sys
В T-SQL я пытаюсь сделать что-то вроде:-
select * from [server_name].dbo.sys.objects
но я получаю сообщение об ошибке "Неверное имя объекта.."
В конечном итоге я хочу сравнить все базы данных двух серверов (что-то вроде следующего..):-
Select * from [server1].dbo.Sys.Databases d1
cross join [server2].dbo.Sys.Databases d2
on d1.database_id = d2.database_id
2 ответа
Использовать этот.
select from [server_name].[base_name].sys.objects
Вы можете использовать связанные серверы для выбора данных из баз данных на двух разных серверах в рамках одного запроса.
Вы можете настроить связанные серверы через SQL Server Mangement Studio в разделе Объекты сервера -> Связанные серверы. После того как вы связали [server1] с [server2], вы сможете выполнить ваш запрос.