powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Прошу совета по переводу базы на более новую версию FB Embedded
9 сообщений из 9, страница 1 из 1
Прошу совета по переводу базы на более новую версию FB Embedded
    #39818998
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую всех. Прошу прощения за не совсем стандартную задачу, которая является в некоем роде оффтопом для этого раздела.

Есть приложение, написанное мной на Delphi уйму лет назад и работающее с базой под FB 1.5 Embedded. Программа работает в довольно многих местах с кучей баз. Откровенно говоря, то был конкретный говнокод (как база, так и сама прога), который мне теперь нужно переделать с добавлением нового функционала. Сейчас мне понятно, что функционала FB1.5 теперь не хватает, и чтобы было красивше и легше, хочу перевести базы на FB 2.5 Embedded. Но как это лучше сделать? Стандартный способ бэкапа в 1.5 и восстановления в 2.5 я бы хотел впихнуть прямо в приложение (у меня есть FIBPlus), но учитывая, что это Embedded, и клиентские либы как в 1.5, так и в 2.5 вместе с их подпапками должны быть размещены в каталоге приложения, это может не прокатить. Хочу посоветоваться с сообществом насчет какого-либо иного возможного пути решения проблемы.
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39819003
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любезный,

батник написать и не мучатся
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39819005
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любезный,

Согласен с m7m, батник. Но почему 2.5?
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39819027
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛюбезныйНо как это лучше сделать?

Добавить в твою программу функцию экспорта всех данных в какой-нибудь внешний формат и
загрузки из него в новую базу будет наилучшим способом миграции между версиями. Я бы в
первую очередь подумал об упакованном наборе CSV файлов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39819030
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. 2.5 должен спокойно сделать бекап БД в ODS 10.x и потом, есс-но, его поднять уже в новом формате 11.2
Т.е. проще всего просто обновить embedded с приложением и не тянуть за собой 1.5 в новых версиях

Если по какой-то (мне не известной) причине это не желательно, то
2. Распространять 2.5 embedded в отдельном подкаталоге и, перед первым коннектом к нему, установить переменную окружения FIREBIRD в имя этого подкаталога.
У 2.5 все ищется относительно fbclient.dll\fbembed.dll, а не относительно .exe, как это было в 1.5
И никаких ключей в реестре

PS напомню, что embedded 1.5 основан на SS, а embedded 2.5 - на SC
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39819045
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо за варианты.

авторбатник написать и не мучатся
Думал об этом. Но возникает такой вопрос: нужны ли файлам gbak от FB1.5 и 2.5 какие-то дополнительные файлы из поставки FB для работы?

авторНо почему 2.5?
Проверенная версия, отлично работающая с FIBPlus. Уже очень много под нее написал, и все отлично работает. Просто настраивается, в т.ч. в Embedded-варианте, хорошо знакомый SQL... К слову, 1.5 мне тоже нравился, но в нем еще нет INSERT...RETURNING, без которого мне теперь туговато.

авторДобавить в твою программу функцию экспорта всех данных в какой-нибудь внешний формат и загрузки из него в новую базу будет наилучшим способом миграции между версиями. Я бы в первую очередь подумал об упакованном наборе CSV файлов.
Это тоже вариант, но проблемы из топа он на первый взгляд не решает. Я знаю, что и в 1.5, и в 2.5 в embedded-поставках есть каталог intl с библиотеками fbintl.dll. Мне думается, что клиентская библиотека при обращении к файлу другой библиотеки будет хватать файл из каталога приложения, и если он окажется чужой версии, возможно ХЗ что. Или есть возможность принудительно поменять ситуацию без правки исходников?

автор1. 2.5 должен спокойно сделать бекап БД в ODS 10.x и потом, есс-но, его поднять уже в новом формате 11.2
Т.е. проще всего просто обновить embedded с приложением и не тянуть за собой 1.5 в новых версиях

Если по какой-то (мне не известной) причине это не желательно, то
2. Распространять 2.5 embedded в отдельном подкаталоге и, перед первым коннектом к нему, установить переменную окружения FIREBIRD в имя этого подкаталога.
У 2.5 все ищется относительно fbclient.dll\fbembed.dll, а не относительно .exe, как это было в 1.5
И никаких ключей в реестре

PS напомню, что embedded 1.5 основан на SS, а embedded 2.5 - на SC
За эту информацию отдельное спасибо. То, что у 2.5 все ищется относительно fbclient.dll\fbembed.dll, думаю, может здесь помочь. Я просто еще не помню, обращаются ли к клиентской либе компоненты FIBPlus для B/R, или нет - надо покурить мануалы. Постараюсь проанализировать этот объем и выработать внятное решение.
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39819240
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛюбезныйЭто тоже вариант, но проблемы из топа он на первый взгляд не решает.

Решает. В этом случае на компьютере может быть только одна версия твой софтины с только
одной (любой) версией Firebird. Ну или две твоих софтины в разных каталогах. Они не подерутся.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39819509
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, вроде до меня дошла мысль, что имеется в виду. В принципе, можно и SQL-скрипты сгенерить.
...
Рейтинг: 0 / 0
Прошу совета по переводу базы на более новую версию FB Embedded
    #39822128
sysdba22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в свое время делали утилиту:

http://gsbelarus.com/gs/fdbconvert/

если, что, исходники тут:

https://github.com/GoldenSoftwareLtd/gedemin/tree/master/Gedemin/Utility/FDBConvertPortable

может чем поможет.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Прошу совета по переводу базы на более новую версию FB Embedded
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]