Я пытаюсь настроить запрос, который захватит версию Windows каждого SQL Server, который у меня есть, и выбросить в таблицу. У меня есть запрос, который захватывает версию, но я думаю, что есть лучший способ получить необходимую информацию, чем подключение к каждому отдельному серверу один за другим для запуска запроса. Я не против использования XP_cmdshell. Мне просто интересно, есть ли способ запустить один запрос, который захватит версию каждой ОС Windows, которую я имею на серверах sql. Также у меня есть список серверов для использования.Запросить несколько SQL-серверов в одном запросе
EDIT: Я знаю, что мне придется каким-то образом коснуться каждого сервера. Я просто хотел бы, чтобы обойти RDP для каждого сервера и открыть SQL-сервер и запросить его или подключиться к каждому серверу на сервере sql и запускать запрос один за другим.
Все, что у меня есть сейчас, код мудрый - это просто ЗАЯВЛЕНИЕ ВСТАВКИ, которое я получаю здесь, и я рисую пробел о том, куда идти дальше, даже мотыгой, чтобы решить проблему. В приведенной ниже таблице есть два столбца ServerName и Win_Ver ServerName уже заполнены всеми серверами, которые у меня есть.
INSERT INTO mtTable
(Win_Ver)
SELECT @@Version
можете ли вы опубликовать код, который у вас есть в настоящее время? также, является ли ваш вопрос об улучшении эффективности вашего запроса другими способами, кроме подключения к каждому серверу? потому что другого пути не будет - вам нужно будет запросить каждый сервер в той или иной форме, чтобы получить информацию. –
Умм, это НЕ версия окон каждого сервера, это информация о версии сервера sql. Вам нужно будет выполнить этот запрос на каждом экземпляре сервера sql. На самом деле это не так. –
Ознакомьтесь с LINKED SERVERS и удаленными вызовами процедур. Связанный сервер позволит вам запрашивать разные серверы Sql, но я думаю, что версия @@ остается локальной, если вы не используете Remote Procedure Call (в основном, выполните ваш запрос на удаленном сервере). Возможно, я ошибаюсь, поэтому дважды проверяю. –