declare @node int = 9044;
DECLARE @sqlCommand NVARCHAR(MAX) =
(
'SELECT * FROM [@node].[database_name].dbo.table_name'
);
DECLARE @paramList NVARCHAR(400) =
(
'@node int'
)
exec sp_executesql @sqlCommand, @paramlist, @node;
Итак, это простой запрос, который я пытаюсь выполнить. 9044 нормально. Выполнение этого запроса обычно работает отлично (очевидно, я удалил имена баз данных и таблиц). Не совсем уверен, что с ним не так. Ошибка, которую я получаю:
Сообщение 7202, уровень 11, состояние 2, строка 1. Не удалось найти сервер «@node» в sys.servers. Убедитесь, что указано правильное имя сервера. При необходимости выполните хранимую процедуру sp_addlinkedserver, чтобы добавить сервер в список sys.servers.
Любые идеи о том, как решить эту проблему, или я должен просто написать запрос и использовать EXEC (@sql)