Экспорт таблиц (объектов и данных) на основе выбранных критериев - PullRequest
0 голосов
/ 30 августа 2011

У меня есть некоторые данные

SELECT [field names] FROM [several joined tables] WHERE [some criteria is true]

, и я хотел бы экспортировать эти данные в другую базу данных, , сохраняя структуру таблицы без изменений , но заполняя их только строками, которые соответствуютГДЕ критерии.

Таким образом, если бы у меня было 5 объединенных таблиц в качестве источника, мои итоговые таблицы назначения также были бы равны 5. Но они будут заполняться только теми данными, которые проходят ограничение предложения WHERE.

Более того, у меня есть база данных, полная данных о клиентах, и я хотел бы отправить отдельную базу данных одному клиенту, заполнив только его / ее записи.

У меня были некоторые мысли об экспорте всей базы данных, а затем об удалении всех записей, где [критерии неверны], но я не думаю, что ссылочная целостность базы данных такова, что все нежелательные записи будут удалены.

Существует ли простой или «правильный» (он же SSIS) способ сделать это?

Ответы [ 2 ]

1 голос
/ 31 августа 2011

Простой и простой способ сделать это.

Шаг 1. Создайте нужные таблицы в новой базе данных (2005/2008) Шаг 1 A. Щелкните правой кнопкой мыши таблицу - Сценарий таблицы как - Создать в новыйОкно редактора запросов.Теперь запустите этот скрипт на вашей новой базе данных.

Шаг 2. Экспортируйте данные из старой БД в вашу новую БД в соответствии с вашими критериями.Вы можете сделать все шаги, если используете BIDS SSIS.

0 голосов
/ 30 августа 2011

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

select  col1, col2, ...
into    DestinationTable
from    SourceServer.SourceDb.dbo.SourceTable
where   col1 = 'A' and ...

Имя из четырех частей предполагает, что вы используете несколько SQL-серверов и у вас есть связанный сервер с именем SourceServer. Если вы используете две базы данных на одном сервере, просто удалите серверную часть имени.

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