Запрос с использованием двух баз данных в построителе отчетов SQL - PullRequest
1 голос
/ 10 ноября 2011

Я новичок в построителе отчетов SQL Server 2.0, и мне нужно сравнить две разные базы данных в одном запросе. В основном мне нужно проверить, существуют ли значения из одной таблицы базы данных в другой таблице базы данных.

Я знаю, что могу добавить несколько источников данных в свой отчет и получить доступ к каждому из них с помощью подотчетов, но каждый созданный мной набор данных может содержать только один запрос. Итак, как я могу использовать один запрос для доступа к двум базам данных?

Или, если есть другой способ объединить мои результаты из нескольких наборов данных, это тоже сработает.

Кроме того, базы данных находятся на одном сервере.

Ответы [ 2 ]

1 голос
/ 24 июня 2012

Направьте ваш источник данных на вашу главную таблицу на сервере, а не на конкретную базу данных, из которой вы хотите получить данные. В результате вам придется ссылаться на все таблицы как .dbo. .

0 голосов
/ 11 ноября 2011

Если базы данных находятся на одном и том же сервере, вы можете сделать один запрос к хранимой процедуре, а затем процесс получит доступ ко 2-й базе данных.

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

Делая это таким образом, вы можете вернуть один набор данных с объединенными результатами, если это то, что вам нужно сделать. Я предупреждаю, что кросс-соединения между базами данных / выборки и т. Д. Могут считаться плохой практикой для удобства обслуживания и того факта, что если вы решите реструктурировать свое развертывание на установку с несколькими серверами, ваши объединения не будут работать, если базы данных не находятся на одном сервере.

...