i

[LO 5.3] Conversion des bases incorporant Firebird


Montée de version Firebird en 3.0.0 dans LibreOffice 5.3. Cette version de Firebird ne peut pas lire les données de Firebird 2.5 donc les fichiers ODB incorporant Firebird et créés jusqu'en version LibreOffice 5.2 ne peuvent être ouverts avec LibreOffice 5.3 [1]


source : https://wiki.documentfoundation.org/ReleaseNotes/5.3/fr#Base


Conséquence : À l’ouverture de l’onglet Tables :


Les fichiers ODB créés avec une version de LibreOffice antérieure à 5.3 peuvent être convertis manuellement au format LibreOffice 5.3 en utilisant Firebird 2.5 pour convertir les données au format archive, et en remplaçant les données de la base par les données au format archive. Pour cela, installer Firebird 2.5 (version stand-alone), et utiliser l'outil "gbak" pour convertir le fichier "database.fdb" en "database.fbk" à l'intérieur du fichier odb. Ne pas oublier de supprimer le fichier .fdb.


Procédure :

Ouvrir le fichier odb avec un désarchiveur (par exemple 7-Zip), ouvrir  le dossier database et en extraire le fichier firebird.fdb.

Exemple de Gbak :

"C:\Program Files\Firebird\Firebird_2_5\bin\gbak.exe" -verbose -y %USERPROFILE%\Desktop\gbak.log -user SYSDBA -password masterkey -convert localhost:%USERPROFILE%\Desktop\firebird.fdb %USERPROFILE%\Desktop\firebird.fbk


Remarque : il convient de supprimer le fichier log avant ré-exécution du script.

Dans le fichier ODB (dossier /database) remplacer le fichier firebird.fdb par le fichier firebird.fbk issu du gbak .

Dans le fichier ODB (dossier /META-INF) actualiser le fichier manifest.xml en reùplacant

<manifest:file-entry manifest:full-path="database/firebird.fdb" manifest:media-type=""/>

par

<manifest:file-entry manifest:full-path="database/firebird.fbk" manifest:media-type=""/>




[1] Comme une version future de firebird disposera d'un module de compatibilité antérieure, une prochaine version de LibreOffice (incluant cette future version de firebird) sera ausi capable d'ouvrir ces anciens fichiers. Firebird incorporé passe au format "archive" de Firebird, indépendant des versions, donc ce problème ne se posera plus.