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

Я добавил проект базы данных SQL Server 2008 в свое решение Visual Studio 2010 Professional Edition в надежде, что это позволит мне включить мою базу данных в систему управления версиями.

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

И каким будет рабочий процесс для фактического использования его для обновления баз до данной ревизии без потери всех данныхсвязано с удалением и повторным созданием всех таблиц?

Обновление: в версиях Premium и Ultimate, есть инструмент сравнения схем, который делает это простым.Это не существует в Professional.Есть ли прямой обходной путь вручную?

Ответы [ 2 ]

1 голос
/ 13 января 2012

У проекта базы данных есть шаг развертывания (который присутствует в моей профессиональной копии VS2010), который сгенерирует сценарий sql с вашими объектами sql.

Ключевым моментом здесь является, если вы щелкнете правой кнопкой мышипроект, свойства, перейдите к развертыванию и измените параметры целевой базы данных на конкретную базу данных; при развертывании он сгенерирует сценарий изменения для этой конкретной базы данных, чтобы он соответствовал объектам в проекте (и теоретически сохранял существующие данные и т. д.).

Вы можете получить его либо для создания сценария sql, либо для непосредственного обновления базы данных.Создание сценария, вероятно, является лучшей идеей:)

1 голос
/ 11 октября 2011

Я не уверен, что вы можете сделать это в VS 2010 Professional, но в VS 2010 Premium вы можете сделать сравнение схемы (Данные -> Сравнение схем -> Сравнение новой схемы) между вашим проектом и базой данных и обновить меняется в любом направлении.

При переходе от проекта к базе данных VS генерирует скрипт, который копирует существующие данные во временную таблицу перед удалением существующей.

...