Как скопировать представления из одной базы данных в другую базу данных
У меня две базы данных с одинаковой структурой на сервере MS SQL.
Я хотел бы скопировать все представления в другую базу данных.
Я попытался использовать функции данных экспорта с помощью DTS (который работает с объектами таблицы).
Но это выполняет SQL и создает объект таблицы.
Я не хочу выполнять это, просто хочу скопировать представление, чтобы я мог открыть их в представлении дизайна.
Я попытался использовать создание нового представления в базе данных назначения и скопировать SQL-запрос представления исходной базы данных и сохранить представление.
Это работает точно так же, как я хочу, но у меня есть количество просмотров и количество копий!
Ответы
Ответ 1
Щелкните правой кнопкой мыши на своей базе данных и скажите "Задачи- > Сгенерировать скрипты". SQL Server Management Studio может генерировать сценарии CREATE для вас.
Затем вы просто скопируете этот script и выполните его на целевом сервере/базе данных.
Ответ 2
Щелкните правой кнопкой мыши базу данных, выберите "Задачи", а затем "Создать" Script. Это позволит вам создать единый script содержащий все представления в базе данных.
Ответ 3
Я знаю, что это ОЧЕНЬ поздний ответ,
однако я думаю, что это может оказаться полезным для некоторых
(если у вас нет студии управления сервером типа gui)
select *
from INFORMATION_SCHEMA.VIEWS
здесь вы получаете столбец с именем "view_definition" в sql-сервере,
(это работает и с базами данных от других поставщиков)
Ответ 4
Если вы имеете доступ к Visual Studio и имеете тип проекта базы данных, вы можете
1) Импортировать все ddl, представления и таблицы, включенные
2) Легко добавить их в интегрированный источник управления
3) Перенос целой или части новой базы данных
После первоначального создания проекта базы данных вам будет предложено подключиться к экземпляру SQL Server и имени базы данных. При импорте ddl для всей базы данных будет доступен в дереве, очень похожим на дерево SSMS, но с файлами DDL, а не на объектах, из которых он был получен.