2013-07-10 2 views
1

У меня есть база данных A , A_Archive. У меня есть T таблицу в A, а также A_Archive (та же структура) Могу ли я сделать выбор (или даже создать представление), чтобы увидеть, как это Somthing:MS SQL Выбор таблиц

. 
. 
. 
A_Archive records 
. 
. 
. 
A records 

и как?

Благодаря

+0

являются '' Ā' и базы данных A_Archive'? И 'T' - таблица? –

ответ

2

Вы должны быть в состоянии добиться этого, используя полностью квалифицированные имена, как:

SELECT * FROM A_Archive.dbo.T 
UNION ALL 
SELECT * FROM A.dbo.T 

в зависимости от dbo ли правильная схема. Также вы должны убедиться, что пользователь, выказывая выбор, имеет необходимые права на обе базы данных.

+0

+1 Лучшее решение :) – Parado

1

Если обе базы данных находятся на том же сервере, вы можете просто написать этот запрос

SELECT * FROM [DatabaseName].dbo.[tableName] 
    UNION ALL 
SELECT * FROM [AnotherDatabaseName].dbo.[AnothertableName] 

Но если эти две базы данных находятся на разных серверах, которые необходимо учитывать sp_addlinkedserver, чтобы создать ссылку на сервер. читать далее из этого link

Надежда это поможет

+0

Есть ли какие-либо ограничения на объединение таблиц? Моя база данных заполнена (10 ГБ, множество измерений). Я создаю A_Archive, а также представление в A_archive, чтобы постоянно видеть таблицу T. Я знаю, что только 255 таблиц могут быть помещены в представление. Ограничения типа View могут содержать только N строк. – Zui

+0

Нет. Количество возвращенных записей не ограничено. Если бы вы не смогли получить все данные из большой таблицы, если вам это действительно нужно. –

+0

Спасибо всем! – Zui

Смежные вопросы