Развертывание изменений базы данных с EF 4.1 - PullRequest
9 голосов
/ 03 мая 2011

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

Спасибо

1 Ответ

8 голосов
/ 03 мая 2011

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

  • База данных со схемой БД, развернутой в настоящее время в рабочей среде - вы должны иметь возможность получить ее из системы контроля версий, поэтому всегда правильно маркируйте / маркируйте свои производственные версии
  • База данных с новой схемой БД

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

Эти инструменты предназначены для сервера SQL.

Если у вас есть разностный скрипт, вы можете проверить его на своем устройстве разработчика. Имейте в виду, что некоторые более сложные изменения не могут быть созданы с помощью разностного скрипта и требуют от вас создания собственного скрипта миграции, например, с сохранением данных существующих данных во временных таблицах при рефакторинге реальной таблицы. Также, если вы используете некоторые новые начальные данные в новой версии, вы должны добавить их вручную в скрипт или использовать инструменты сравнения данных (также предлагаемые обоими продуктами).

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

...