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)