Развертывание версий базы данных. Entity Framework Migrations vs SSDT DacPacs

У меня есть данные -центрированное приложение с SQL Server. Среды, в которых они будут развернуты, не находятся под нашим контролем, и там нет администраторов баз данных (, все они малые предприятия ), поэтому нам нужно, чтобы процесс распространения каждого обновления приложения/базы данных был максимально автоматическим. насколько это возможно.

Помимо обычных изменений между версиями приложения (, иногда непредсказуемых ), мы уже знаем, что нам нужно распространять некоторые новые начальные данные с каждой версией. Иногда эти исходные данные будут связаны с другими данными в нашей системе. Например, :, возможно, нам потребуется вставить 2 новые строки некоторых основных данных в процессе обновления v2 -v3, а некоторые другие 5 строк — в процессе обновления v5 -v6.

EF

Мы проверили Entity Framework Db Migrations (, доступные для существующих баз данных без кода -Впервые после выпуска 4.3.1 ),который представляет традиционные последовательные сценарии более автоматическим и контролируемым способом (, например Fluent Migrations ).

SSDT

С другой стороны, придерживаясь другого подхода, мы проверили SSDT и его dacpacs, моментальные снимки и сценарии до -и после -развертывания.

Вопросы::

  1. Какая из этих технологий/философий больше подходит для описанного случая?

  2. Любая другая технология/философия, которую можно было бы использовать?

  3. Что еще посоветуете?

Заранее спасибо.

9
задан Tim Abell 29 January 2016 в 20:44
поделиться