Как скопировать представления из одной базы данных в другую базу данных

У меня две базы данных с одинаковой структурой на сервере MS SQL.

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

Я попытался использовать функции данных экспорта с помощью DTS (который работает с объектами таблицы).

Но это выполняет SQL и создает объект таблицы.

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

Я попытался использовать создание нового представления в базе данных назначения и скопировать SQL-запрос представления исходной базы данных и сохранить представление. Это работает точно так же, как я хочу, но у меня есть количество просмотров и количество копий!

4 ответа

Щелкните правой кнопкой мыши на своей базе данных и скажите "Задачи- > Сгенерировать скрипты". SQL Server Management Studio может генерировать сценарии CREATE для вас.

Затем вы просто скопируете этот script и выполните его на целевом сервере/базе данных.


Щелкните правой кнопкой мыши базу данных, выберите "Задачи", а затем "Создать" Script. Это позволит вам создать единый script содержащий все представления в базе данных.


Я знаю, что это ОЧЕНЬ поздний ответ, однако я думаю, что это может оказаться полезным для некоторых (если у вас нет студии управления сервером типа gui)

select * 
from INFORMATION_SCHEMA.VIEWS

здесь вы получаете столбец с именем "view_definition" в sql-сервере, (это работает и с базами данных от других поставщиков)


Если вы имеете доступ к Visual Studio и имеете тип проекта базы данных, вы можете 1) Импортировать все ddl, представления и таблицы, включенные 2) Легко добавить их в интегрированный источник управления 3) Перенос целой или части новой базы данных

После первоначального создания проекта базы данных вам будет предложено подключиться к экземпляру SQL Server и имени базы данных. При импорте ddl для всей базы данных будет доступен в дереве, очень похожим на дерево SSMS, но с файлами DDL, а не на объектах, из которых он был получен.

licensed under cc by-sa 3.0 with attribution.