Развертывание проекта базы данных Visual Studio 2010

У меня есть проект Visual Studio 2010 Database, из которого я хочу сгенерировать script что просто переносит эту базу данных на другую машину. Проблема в том, что я не могу найти решение для этого.

Когда я начал проект, я импортировал shema из базы данных на моем компьютере разработки. Объекты схемы были сгенерированы и все таблицы и сценарии, где в разделе "Объекты схемы → Схемы → dbo". С течением времени некоторые вещи изменились, некоторые добавили. И используя щелчок правой кнопкой мыши → развертывание, изменения были внесены в мою локальную базу данных успешно.

Но теперь я хочу развернуть на другую машину. Проблема в том, что в папке выпуска проекта есть только файл xml dbschema, содержащий все таблицы и сценарии, которые я не могу импортировать с студией управления sql (или я просто не могу узнать, как это сделать) и развертыванием script, которое представляет собой не что иное, как некоторые проверки, за которыми следует предварительное и пост-развертывание script, но без каких-либо таблиц или скриптов в нем,

Итак, как мне экспортировать базу данных из Visual Studio, поэтому я могу легко разместить ее на другой машине?

Ответ 1

Можно ли указать свою Visual Studio на новую целевую базу данных? 1. Свойства вашего проекта базы данных, вкладка "Развернуть", установите поля в "Параметры целевой базы данных".

Теперь, когда вы создаете развертывание script, результирующий файл SQL будет представлять собой различные CREATe/ALTER/DROP и т.д., которые выровнят целевую базу данных с вашей схемой.

Ответ 2

Marks -

Вероятно, вы уже решили это, но я подумал, что должен отвечать на ваши вопросы в интересах других.

Да, вы можете развернуть из Visual Studio на разные машины. Вы также можете сделать это из командной строки, используя VSDBCMD. И вы можете создать проект WIX, чтобы дать мастеру другим, чтобы установить его с помощью.

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

  • Выберите другую конфигурацию из раскрывающегося списка "Конфигурация решения". Как правило, проект будет поставляться с записями "Отладка" и "Выпуск". Вы можете добавить еще одну конфигурацию, позволяющую развертывать различные цели, нажав "Configuration Manager".

Solution Configuration drop down

  1. Щелкните правой кнопкой мыши свой проект и выберите "Свойства" или просто дважды щелкните "Свойства" в проекте.
  2. Перейдите на вкладку "Развернуть". Обратите внимание, что раскрывающийся список Configuration: показывает ту же выбранную конфигурацию, что и "active".
  3. Измените действие Deploy на "Создать развертывание script (.sql) и разверните его в базу данных".
  4. Рядом с Target Connection String нажмите "Изменить" и используйте диалоговое окно для создания вашего соединения для развертывания с целевой базой данных.
  5. Заполните имя базы данных Target, если оно отличается.
  6. Для каждой конфигурации развертывания (например, отладки, выпуска и т.д.) вам, вероятно, понадобится отдельный файл конфигурации развертывания. Если вы нажмете "Создать", вы можете создать его для текущей конфигурации. Новый файл откроется, и вы можете проверить и снять отметку с важными сведениями о развертывании.

The .sqldeployment file

  1. Примечание. Если вы проверите Всегда воссоздавать базу данных, script будет DROP и CREATE вашей базы данных. Вы потеряете все свои данные на цель! Будьте осторожны, что вы выбираете здесь. Большинство людей оставляют это без контроля для цели производства. Я проверяю его для разработки или локального, потому что я хочу, чтобы там была новая копия.
  2. Сохраните изменения в файле и в свойствах.
  3. Для развертывания на целевом компьютере обязательно выберите правильную конфигурацию. Нажмите "Построить/Развернуть [My Database Name]". Вероятно, вам следует поэкспериментировать с этим, чтобы вы знали, как это работает, прежде чем пытаться использовать его в живой среде.
  4. Хорошая практика: создайте аналогичную среду для производства ( "Staging" ) и сначала разверните ее, чтобы протестировать развертывание и всегда создавать резервные копии базы данных перед развертыванием, если что-то пойдет не так.

Для получения дополнительной информации см.:

Ответ 3

Вы всегда можете создать пустую базу данных, а затем сравнить схему в Visual Studio между проектом базы данных и новой пустой базой данных. Вы можете изменить сгенерированное обновление схемы script, чтобы также создать базу данных (поскольку script будет обновлять существующую пустую базу данных)