Вставка вывода запроса в таблицу, созданную на другом сервере SQL Server 2008 - PullRequest
0 голосов
/ 23 февраля 2011

Мне было интересно, может ли кто-нибудь подсказать мне, как я могу вставить вывод запроса в таблицу, которую я создал на другом сервере, где я выполняю свой запрос.

Например:

Таблица

расположена на server1 с именем tbl1 в базе данных с именем database1 .

запрос, который я выполняю, запрашивает данные, расположенные на сервере 2.

для команды вставки, будет ли это работать: server1.database1.tbl1

Если вам нужна дополнительная информация, пожалуйста, дайте мне знать.

Ответы [ 4 ]

1 голос
/ 23 февраля 2011

Полностью определенные удаленные имена состоят из 4 частей: servername.databasename.schemaname.tablename.Вы можете выполнять с ними любые операции, включая INSERT-SELECT, если связанный сервер правильно настроен для обновлений и MSDTC правильно настроен для двух серверов для участия в распределенной транзакции.

1 голос
/ 23 февраля 2011

Пока вы можете связаться с обоими серверами, это должно быть достаточно просто:

 INSERT INTO server1.database1.dbo.tbl1(list of columns)
   SELECT
      (list of columns)
   FROM
      server2.database2.dbo.tbl2
   WHERE
      (some condition here)
0 голосов
/ 23 февраля 2011

Предполагая, что вы создали связанный сервер для сервера1 с соответствующими разрешениями, вы сможете:

insert into server1.database1.dbo.tbl1
    select ...
0 голосов
/ 23 февраля 2011

Ваша команда вставки на сервере server2 будет работать, но только если сервер server1 зарегистрирован как связанный сервер на сервере server2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...