Программа установки базы данных Visual Studio 2010 / скрипт установки - PullRequest
2 голосов
/ 11 мая 2011

Я использовал проект базы данных в Visual Studio 2010 для создания базы данных. Visual Studio делает этот процесс действительно простым для развертывания базы данных и развертывания обновлений. У меня проблема в том, как заставить Visual Studio создать сценарий, который будет создавать базу данных, которую я могу использовать в QA или производственной системе.

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

1 Ответ

1 голос
/ 13 сентября 2011

Как бы странно это не звучало, Visual Studio не создает файл SQL для развертывания базы данных при выполнении сборки.

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

Затем у вас есть возможность вручную выполнить сценарий SQL, созданный с помощью утилиты командной строки SQLCMD (или через SSMS в режиме SQLCMD), или же вы можете настроить свой проект базы данных Visual Studio для выполнения сценария, если указать следующее Развернуть действие в настройках проекта:

Generate a deploy script (.sql) and deploy to the database

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

Когда вы переходите на этап, на котором вы хотите выполнить развертывание в среде QA или PROD, у вас есть несколько вариантов:

  • Развертывание непосредственно в Visual Studio. В дополнение к стандартным конфигурациям Debug и Release, которые вы получаете при первом создании вашего проекта базы данных, вы также можете создавать свои собственные конфигурации, которые вы могли бы использовать для развертывания в своем. Среды QA и PROD (т.е. потенциально с другой строкой соединения / именем целевой базы данных).
  • Развертывание с сервера сборки. Установите Visual Studio на отдельном компьютере и вызовите MsBuild для вашего файла .dbproj / .sln, указав цели Build и Deploy с соответствующими свойствами соединения.

Даг Рэтбоун написал отличный пост в блоге на эту тему, если вы хотите узнать больше: http://www.diaryofaninja.com/blog/2011/06/23/compare-amp-update-database-schemas-right-within-your-ide--part-2-automation-with-teamcity

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