Проверка таблицы и версии при старте это необходимое зло. Вместо этого вы сейчас сверяете свои классы со схемой или что-то такое. Апдейт же этой таблицы может быть только в одном случае - когда вы накатываете апдейт на базу целиком, а в этом случае всё просто ибо он атомарен - либо прошёл, либо нет.
> Часть программы должна оставаться работоспособной вне зависимости от схемы базы.
Вот не люблю я такое. Я считаю что программа либо работает, и всё от чего она зависит находится в актуальном состоянии, либо не работает. Если у программы есть возможность привести всё в порядок (например работает с базой монопольно или ещё чего-то), она должна это сделать, если нет - есть технический специалист, номер тех.поддержки, etc.
no subject
> Часть программы должна оставаться работоспособной вне зависимости от схемы базы.
Вот не люблю я такое. Я считаю что программа либо работает, и всё от чего она зависит находится в актуальном состоянии, либо не работает. Если у программы есть возможность привести всё в порядок (например работает с базой монопольно или ещё чего-то), она должна это сделать, если нет - есть технический специалист, номер тех.поддержки, etc.