Интересно, знает ли кто-нибудь о хороших рамках или совете о том, как автоматически хранить и обновлять базу данных в зависимости от версии.
Например, представьте, что мы находимся на версии 1.1, а программное обеспечение обновлено до версии 2.0. Есть определенные вещи, которые должны произойти между 1.1 и 2.0, чтобы вещи были совместимы.
- 1.2 добавляет новую таблицу
- 1.3 удаляет старую таблицу и изменяет некоторые имена полей
- 1.4 Добавляет связь между таблицей a и b.
Таким образом, чтобы версия 2.0 работала с базой данных версии 1.1, необходимо выполнить описанные выше процедуры, прежде чем запускать приложение.
Как мы делали это раньше, у нас был номер версии, сохраненный в поле в базе данных. Класс наследовал бы для базового класса и называл бы себя Update
+ номером версии , например, Update1.2
.
Каждый класс будет выполнять свои необходимые задачи, обновлять номер версии и продолжать процесс.
Должна быть какая-то основа для этого или хотя бы рекомендуемый способ действий?
Буду признателен за любую помощь.