DropTableA, которая уже применена на базу для версии 2. Потом пошли пилить версию 3, но в силу того, что я поздно замержил свой код с версии 2, в версии 3 этой миграции ещё нет. Смержившись, я пытаюсь обновить базу версии 2 до версии 3, но EFCore пытается заново выполнить уже выполненную миграцию DropTableA и у него ничего не выходит, поскольку DropTableA удаляет таблицу А, а поскольку в версии 2 миграция уже выполнена, то EFCore не может найти эту таблицу. Как выйти из данного положения и корректно обновиться с версии 2, на версию 3?
руками нельзя скрипты накатить?
какие конкретно? Я пытался SQL скриптами проверить наличие записи о миграции в надежде получить true или false и в зависимости от значения просто скипнуть данную миграцию
drop table if exists?
SQL скрипты, обновляющие базу до нужного состояния из миграции взять, выкинуть кусок связанный с DropTableA
т.е. иными словами на деве, где сейчас этой миграции нет, её можно просто в лоб применить(она отрабатывает) а для перехода со второй на 3 версию в проде, можно просто убрать попытку дропнуть таблицу?
может кто-то чуть подробнее описать, что тут имеется в виду?
скрипт взять, как текст зайти через какую-нибудь приложуху на базу (что там, постгрес?) и выполнить этот скрипт
окей, допустим, а с продом делаем то же самое7
почему бы и нет? технически прод ничем не отличается
Обсуждают сегодня