Переход на Firebird 3 (постановка)
Материал из GedeminWiki
В Firebird 3 запрещено напрямую менять системные таблицы. Через это не будет выполняться часть процедур апгрейда структуры БД. Планируется сделать следующее:
- Пусть M максимальный номер версии структуры БД в списке процедур
- Фиксируем константой К номер версии структуры БД, до которой (включительно) процедуры обновления будут выполняться только на сервере 2.5. К <= M
- При подключении определяем номер версии структуры БД -- N
- При подключении определяем версию сервера
- Если версия сервера 2.5:
- Если N < K, то выполняем процедуры апгрейда до К
- Если N > K, то сообщаем, что необходимо перейти на сервер версии 3
- Если версия сервера 3:
- Если N < K, то сообщаем, что БД надо сначала апгрейдить на сервере 2.5 и только потом переносить на Firebird 3
- Если K < N < M, то выполняем процедуры апгрейда до M