[Résolu]ODB autonome tables non connectées

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Avatar de l’utilisateur
jeanmi2403
SuppOOrter
SuppOOrter
Messages : 1398
Inscription : 18 janv. 2008 10:02
Localisation : Val de Marne

Re: ODB autonome tables non connectées

Message par jeanmi2403 »

Bonsoir,
Son premier message nous dit qu'il utilise une base HSQLDB autonome, aidé par la doc de Jean-François Nifenecker
Il est logique qu'il essaie de faire la même chose sur Ubuntu.
Bonne soirée
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25143
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: ODB autonome tables non connectées

Message par Dude »

jeanmi2403 a écrit :Son premier message nous dit qu'il utilise une base HSQLDB autonome
Dans son 1er message, ChristianC a écrit :Si oui, y-a-t-il un moyen simple de transférer les données d’un fichier .data de la base autonome dans MySql en local ?
ChristianC
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 09 févr. 2010 19:50
Localisation : Suisse

Re: ODB autonome tables non connectées

Message par ChristianC »

Bonjour,
Je ne cherche pas obligatoirement le MySql, c'est une tentative pour accéder autrement à mes données tant que pas de solution connexion hsqldb
La solution privilégiée désirée est d'utiliser ce qui fonctionnait bien sous Windows : hsqldb
Donc je prends contact avec Ysabeau
Vous tiens au courant
Bon week-end
AOo 4.1.10 sous Windows 10
Avatar de l’utilisateur
jeanmi2403
SuppOOrter
SuppOOrter
Messages : 1398
Inscription : 18 janv. 2008 10:02
Localisation : Val de Marne

Re: ODB autonome tables non connectées

Message par jeanmi2403 »

Bonjour,
Après avoir contacté Ysabeau de mon côté, j'ai fini par installer HSQLDB autonome, d'abord sur Fedora, pour avoir un système compatible avec le sien.
Et la connexion avec LibreOffice a fonctionné.
J'ai donc cherche pour Ubuntu. C'est différent, les fichiers ne sont pas dans les mêmes dossiers !!!
Comme dit un gourou linuxien : "c'est le prix de la liberté", sans me convaincre...
D'abord, l'installation (spécifique, selon forum Ubuntu)
sudo apt update
sudo apt install hsqldb-utils
J'ai donc cherché ou était caché ce farceur après l'installation, avec :
sudo find / | grep hsqldb
Trouvé dans le dossier : /usr/share/java/
Ensuite, avec n'importe quel module (je le fais à partir de Writer, ça évite d'ouvrir un fichier), mettre en place les chemins de classe dans les options Java : Outils>Options>Avancé
puis Chemins de classe et ajouter une archive (/usr/share/java/hsqldb.jar), puis ajouter un dossier (/usr/share/java)
Paramètres Java pour HSQLDB
Paramètres Java pour HSQLDB
ConnexionsHSQLDB.png (11.5 Kio) Consulté 934 fois
La base de données étant un groupe de fichiers dans un dossier, création du dossier dans /home/jeanmi. J'ai créé un dossier Bases à cet endroit, puis un dossier EssaiHSQL dans lequel la base Essai sera crée.
Pour terminer, création de la base dans LibreOffice (comme sous Windows), dans le premier écran Connecter une base de données existante, choisir JDBC, puis "Suivant".
Remplir ensuite les paramètres de connexion JDBC, avec le dossier créé précédemment (ne pas lire l'exemple !!) :
Dossier de la base et pilote
Dossier de la base et pilote
Eventuellement, tester la classe, pour être sûr.
Puis Terminer, et enregistrer le fichier odb.
On peut constater dans le dossier de la base, la création des fichiers.
C'est là que tu vas copier ta base provenant de Windows.
Fichiers de la base
Fichiers de la base
Après création d'une table, au moment de l'enregistrement, il faudra choisir
  • Catalogue : PUBLIC
    Schéma : PUBLIC
 Ajout : Attention ! pour utiliser une base HSQLDB interne, il faudra supprimer les chemins de classe, sinon, à l'ouverture d'une table, on aura le message "Impossible de charger le contenu des données", "La table « Matable» n'existe pas.", puisqu'il la cherche sur le HSQLDB externe 
Bonne journée,
PS : Je vais faire un document complet sur le sujet, pour Fedora et Ubuntu, et l'intégrer au guide Base dont la traduction est terminée.
Dernière modification par jeanmi2403 le 25 nov. 2020 19:08, modifié 8 fois.
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
ChristianC
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 09 févr. 2010 19:50
Localisation : Suisse

Re: ODB autonome tables non connectées

Message par ChristianC »

Merci, c'est top
Je vais essayer ce soir
AOo 4.1.10 sous Windows 10
Avatar de l’utilisateur
jeanmi2403
SuppOOrter
SuppOOrter
Messages : 1398
Inscription : 18 janv. 2008 10:02
Localisation : Val de Marne

Re: ODB autonome tables non connectées

Message par jeanmi2403 »

Bonjour,
Comme ça aurait été trop simple, je suis obligé d'en rajouter une couche....
Dans un message précédent, tu signale que tu souhaites transférer un fichier ".data". J'avoue que jusque-là je ne m'en étais pas soucié, mais ça me titillait en arrière plan, car je n'en avais pas vu dans le dossier de ma base externe.
J'ai donc désossé un fichier ODB base intégrée (à la lecture du document de JFN), pour y trouver ce fameux fichier.
Problème, en recopiant tous les fichiers de l'archive dans la base externe, je ne voyais pas mes données
C'est parce qu'il y a deux manières d'utiliser HSQLDB !!
  • en mémoire (MEMORY), tout est dans le fichier ".script", c'est le mode par défaut
    en cache (CACHE), la description est dans ".script" et les données dans ".data"
Donc pour réutiliser la base venant de windows, il faudra connecter la base sur Ubuntu en mode "CACHE"
Avec la ligne (version chez moi) :
hsqldb:file:/home/jeanmi/Bases/Cache/BaseCache;default_schema=true;shutdown=true;hsqldb.default_table_type=cached
comme décrit dans le document de JFN.
Et le fichier .data sera bien pris en compte. Ouf !
DossierHSQL2.png
 Ajout : Dans le mode CACHE, à la création d'une table, la demande de catalogue et de schéma disparaissent 
Cordialement,
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
ChristianC
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 09 févr. 2010 19:50
Localisation : Suisse

Re: ODB autonome tables non connectées

Message par ChristianC »

Jeanmi
Merci pour le chemin de la classe du pilote qui a tout débloqué.
C'est après-midi jai réussi à connecter ma base no1. Tout y est!
J'ai fais quelques tests. Il y aura des réglages. Par exemple un formulaire et un seul ne trouvait pas une table et une seule. Correction dans propriété du formulaire-source de données-et sélectionner la table "manquante" en tenant compte de PUBLIC
D'autres feront peut-être l'objet de futures questions.
Je me réjouis de lire ton nouveau tuto.
Merci à tous pour le temps passé.
Pour résumer: Transfert d'une base autonome existante de Windows à Ubuntu se fait simplement par un copier coller du dossier complet de la base et ajustage des chemins de classe du pilote, et de l'URL des paramètres de connexion du fichier odb de cette base, sans tout refaire selon tuto de JFN.
AOo 4.1.10 sous Windows 10
Verrouillé