Создание временной таблицы T-SQL на другом сервере - PullRequest
0 голосов
/ 18 августа 2010

Я использую SQL Query Analyzer для создания отчета из базы данных на одном компьютере (A), и я хотел бы создать временную таблицу на сервере базы данных на другом компьютере (B) и загрузить его с данными с машины А.

Если говорить более конкретно, у меня есть отчет, работающий на машине A (machine.a.com), извлекаемый из схемы tst. Используя SQL Query Analyzer, я захожу на сервер по адресу machine.a.com и затем получаю доступ к схеме tst:

USE tst;
SELECT *
FROM prospect;

Я хотел бы создать временную таблицу из этого окна запроса, только я хотел бы, чтобы она была построена на другой машине (назовите ее machine.b.com). Какой синтаксис я бы использовал для этого? Я думаю, что-то вроде:

CREATE TABLE machine.b.com.#temp_prospect_list(name varchar(45) Not Null, id decimal(10) Not Null);

А потом я хотел бы загрузить эту новую таблицу с чем-то вроде:

INSERT INTO machine.b.com.#temp_prospect_list VALUES (
    USE tst;
    SELECT *
    FROM prospect; );

1 Ответ

0 голосов
/ 18 августа 2010

Синтаксис для доступа к удаленному серверу в T-SQL состоит в том, чтобы полностью квалифицировать любое имя таблицы следующим образом (скобки включаются при необходимости):

[LinkedServer].[RemoteDatabase].[User].[Table]

Так, например, чтобы выполнить инструкцию SELECTна одном сервере, который обращается к таблице на другом сервере:

SELECT * FROM [machine.b.com].tst.dbo.table7;
...