Как управлять управлением версиями при разработке с SQL Server Express? - PullRequest
4 голосов
/ 31 октября 2008

Я занимаюсь разработкой веб-сайта с использованием SQL Server Express на моей машине. Моя хостинговая компания предоставляет мне SQL Server 2005.

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

Сейчас я помещаю свой код в систему контроля версий, и мне хотелось бы знать, как управлять схемой базы данных. Что я в нее вкладываю? Создать команды? Изменить сценарии?

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

РЕДАКТИРОВАТЬ Есть идеи относительно того, что должно входить в систему контроля версий? Должны ли сценарии DDL идти сюда?

Ответы [ 2 ]

6 голосов
/ 31 октября 2008

Развертывание изменений схемы в виде сценариев обновления DDL и, если вы этого еще не сделали, добавьте таблицу с номером версии схемы, который вы обновляете в конце каждого сценария обновления.

РЕДАКТИРОВАТЬ: Да, все ваши сценарии должны входить в систему контроля версий, включая сценарии DDL.

2 голосов
/ 31 октября 2008

Обычно я храню тестовую копию действующей базы данных в своей локальной или виртуальной коробке разработки, которую я обычно сбрасываю из базы данных prod до тестирования. Тестовая копия предназначена для моей полной эксплуатации. Когда у меня есть что-то, что, по моему мнению, готово к развертыванию, я перемещаю его в свой набор данных для разработки, который отражает prod db и не используется для игры. Если разработка db пройдет все мои тесты, я разверну сценарий в рабочей базе данных db

...