Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
libreoffice_mysql [Le 16/03/2015, 19:28]
L'Africain créée
libreoffice_mysql [Le 14/01/2025, 15:25] (Version actuelle)
arverne73 orthographe
Ligne 1: Ligne 1:
-{{tag>​SGBD bureautique}}+{{tag>Noble Jammy Focal SGBD bureautique}}
  
 ---- ----
Ligne 17: Ligne 17:
  
 Vous pouvez vous connectez avec Base de trois manières: Vous pouvez vous connectez avec Base de trois manières:
-  * [[#Avec l'​extension libreoffice-mysql-connector|Avec une extension pour libreoffice]], +  ​* [[#​Directement]] 
-  * [[#Avec le pilote JDBC]], +  ​* [[#Avec l'​extension libreoffice-mysql-connector|Avec une extension pour libreoffice]] ​(ancienne méthode) 
-  * [[#Avec le pilote ODBC]],+  * [[#Avec le pilote JDBC]] 
 +  * [[#Avec le pilote ODBC]] 
 + 
 +=====Directement===== 
 +Depuis les versions 6 de LibreOffice,​ un connecteur est intégré à l'​application. Il est donc inutile d'​installer une extension ou d'​activer les pools de connexions dans les préférences. 
 + 
 +A la création du fichier Base, il faut successivement : 
 +  - Choisir la 3e option "​Connecter un base de données existante"​ et sélectionner "​MySQL"​ ou "​MySQL/​MariaDB"​ 
 +  - A l'​écran suivant, sélectionner "​Connexion directe (connecteur MariaDB C)" 
 +  - Compléter l'​écran suivant. Si la base MySQL est installée sur le même poste, le serveur est "​localhost",​ sinon l'​adresse IP du poste serveur. Le port est 3306 
 +  - Compléter les 2 écrans suivants non spécifiques 
 + 
 +<note important>​Ce type de connexion connaît des bugs entraînant un gel de LibreOffice ou une fermeture brutale, surtout avec le code Basic. Un message du [[https://​bugs.launchpad.net/​ubuntu/​+source/​libreoffice/​+bug/​1972820 |forum Bugzilla (voir#16)]] indique clairement que ce connecteur n'est pas adapté à MySQL mais prévu pour MariaDB. D'​après les utilisateurs d'​autres forums, la connexion directe est plus fiable avec OpenOffice. En cas de difficulté,​ changer la connexion pour MySQL JDBC qui est un peu plus lente mais fiable(voir ci-dessous 4.2).</​note>​ 
 + 
 +Il n'est pas simple non plus de remplacer une connexion d'un autre type pour utiliser celle-là : nécessité de créer une nouvelle base et réintégrer les différents éléments (formulaires,​ requêtes, rapportscode).
  
 =====Avec l'​extension libreoffice-mysql-connector===== =====Avec l'​extension libreoffice-mysql-connector=====
-Ce qui suit est valable à partir de Libreoffice 4.2.+<note important>​Cette extension n'est plus disponible depuis la version Noble !</​note>​ 
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libreoffice-mysql-connector]]** qui est une extension de connexion MariaDB/​MySQL pour LibreOffice. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libreoffice-mysql-connector]]** qui est une extension de connexion MariaDB/​MySQL pour LibreOffice.
 +Si vous avez des problèmes avec ce pilote sous Ubuntu 16.04 voir [[https://​bugs.launchpad.net/​ubuntu/​+source/​libreoffice/​+bug/​1577316|ici]]. Comme indiqué en ce lieu le JDBC fonctionne.
 +
 +Alternative : ajouter une extension que vous pouvez télécharger à [[https://​www.arielch.org/​aoo/​aoo-my-sdbc/​|MySQL Driver]].
  
 ===== Avec un pilote JDBC ===== ===== Avec un pilote JDBC =====
 +==== Avec un paquet ====
 +<note important>​Cette solution n'est plus disponible dans les versions actuellement supportées. Voir la 2e solution.</​note>​
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libha-jdbc-java]]**. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libha-jdbc-java]]**.
 Dans Libreoffice,​ avant de pouvoir utiliser un pilote JDBC, vous devez ajouter son chemin de classe. Choisissez //Outils -> Options -> LibreOffice -> Avancé//, et cliquez sur le bouton Chemin de classe. Naviguez jusqu'​à l'​archive qui se trouve dans ///​usr/​share/​java/​mysql-connector-java-5.1.28.jar//​. Après avoir ajouté les informations de chemin, redémarrez LibreOffice. Dans Libreoffice,​ avant de pouvoir utiliser un pilote JDBC, vous devez ajouter son chemin de classe. Choisissez //Outils -> Options -> LibreOffice -> Avancé//, et cliquez sur le bouton Chemin de classe. Naviguez jusqu'​à l'​archive qui se trouve dans ///​usr/​share/​java/​mysql-connector-java-5.1.28.jar//​. Après avoir ajouté les informations de chemin, redémarrez LibreOffice.
 +
 +<note important>​LibreOffice Base s'​installe avec le support du pilote JDBC comme une dépendance,​ paquet [[https://​packages.ubuntu.com/​xenial/​libreoffice-base-drivers|libreoffice-base-drivers]]
 +
 +Le paquet [[https://​packages.ubuntu.com/​xenial/​libha-jdbc-java|libha-jdbc-java]] ne fournit aucun pilote JDBC mais une abstraction de haute disponibilité à toute connectivité JDBC.
 +</​note>​
 +
 +Une procédure détaillée pour lire une base access avec le pilote JDBC peut se trouver [[lire_une_base_access|ici]].
 +
 +==== En utilisant le pilote JDBC inclus ====
 +A la création d'un fichier LO Base, au 2e écran, choisir « Connecter en utilisant JDBC (Java Database Connectivity) ».
 +
 +Pour un fichier Base existant, aller au menu //Édition -> Base de données -> Type de connexion//​. Dans la liste déroulante « Type de base de données »,​ choisissez « MySQL(JDBC) ».
 +
 +A l'​écran suivant, pour « Classe de pilote JDBC MySQL », indiquer : ''​com.mysql.cj.jdbc.Driver''​
 +
 +Remplir les autres informations quant à l'​adresse du serveur, le nom de la base de données et de l'​utilisateur (si la base MySQL est installée sur le même poste, le serveur est "​localhost",​ sinon l'​adresse IP du poste serveur. Le port est 3306).
 +
 +Enfin, on peut cliquer sur le bouton « Tester la classe » pour vérifier que la connexion marche (à condition que les paragraphes suivants aient été réalisés).
 +
 +En effet, pour que la connexion fonctionne il faut encore ajouter un Chemin de classe dans les paramètres Java de LibreOffice //Outils -> Options -> LibreOffice -> Avancé// puis cliquez sur le bouton « Chemin de classe ».
 +
 +Auparavant, télécharger le connecteur sur le [[https://​dev.mysql.com/​downloads/​connector/​j/​|site de MySQL]]. Il s'agit d'une archive au format .deb ; elle ne va pas être utilisée telle quelle. Il faut l'​ouvrir avec un gestionnaire d'​archives (comme File Roller) et naviguer vers /​usr/​share/​java/​ (chemin constaté pour la version 9.1.0 en janvier 2025) pour trouver le fichier //​mysql-connector-j-x.x.x.jar//​. C'est ce fichier qu'il faut extraire et enregistrer sur votre ordinateur puis indiquer son emplacement dans la boite de dialogue « Chemin de classe ».
  
 ===== Avec un pilote ODBC ===== ===== Avec un pilote ODBC =====
Ligne 41: Ligne 83:
 name: Mysql name: Mysql
 description:​ Mysql driver description:​ Mysql driver
-driver: ​+driver:
 ou en 64 bits:  /​usr/​lib/​x86_64-linux-gnu/​odbc/​libmyodbc.so ou en 64 bits:  /​usr/​lib/​x86_64-linux-gnu/​odbc/​libmyodbc.so
 setup: /​usr/​lib/​x86_64-linux-gnu/​odbc/​libodbcmyS.so setup: /​usr/​lib/​x86_64-linux-gnu/​odbc/​libodbcmyS.so
Ligne 62: Ligne 104:
 ===== Connection à la base de donnée===== ===== Connection à la base de donnée=====
  
-Dans LibreOffice ​+Dans LibreOffice, ​utiliser les étapes ci-dessus. 
-  * Onglet //Fichier -> Nouveau -> Base de données//, + 
-  * Cochez la case //Se connecter à une base de données existante//,​ puis sélectionnez //Mysql// dans la liste au-dessous, +  * Dans le cas d'une connexion directe et JDBC remplissez ​aussi les champs :
-  * Cliquez sur le bouton //​Suivant//,​ +
-  * Si vous avez installé:​ +
-    * L'​extension,​ choisissez //Connecter directement//,​  +
-    * Si vous avez activé le pilote ODBC choisissez //​Connection utilisant ODBC//, +
-    * Si vous avez activé le pilote JDBC choisissez //​Connection utilisant JDBC//, +
-  * Cliquez sur le bouton //Suivant// +
-  * Dans le cas d'une connexion directe et JDBC remplissez les champs ​comme suit:+
     *  //Nom de la base de données//, entrez //le nom de votre base de donnée//;     *  //Nom de la base de données//, entrez //le nom de votre base de donnée//;
-    * "​Serveur",​ entrez //​localhost//,​ si la base se trouve sur votre pc, ou l'​adresse IP d'un autre serveur, ​+    * "​Serveur",​ entrez //​localhost//,​ si la base se trouve sur votre pc, ou l'​adresse IP d'un autre serveur, ​port 3306
   * Cliquez sur le bouton //​Suivant//,​   * Cliquez sur le bouton //​Suivant//,​
   * Tapez le nom d'​utilisateur que vous utilisez pour accéder à votre base, et suivant la configuration de votre serveur MySQL, cochez ou non //Password required//,   * Tapez le nom d'​utilisateur que vous utilisez pour accéder à votre base, et suivant la configuration de votre serveur MySQL, cochez ou non //Password required//,
   * Cliquez sur le bouton //​Terminer//​.   * Cliquez sur le bouton //​Terminer//​.
  
-Ça y est, vous avez maintenant accès à votre base MySQL sous LibreOffice. ​+Il faut bien-sûr que l'​utilisateur existe dans la configuration de [[mysql|MySQL]] (ou utilisez [[phpmyadmin|phpMyAdmin]]). Si l'​accès se fait à partir d'un autre poste, il faut là aussi créer un utilisateur spécifique avec les privilèges adéquats et configurer MySQL pour un droit d'​accès de l'​extérieur (voir sur la page [[mysql#​connexions_entrantes|MySQL]]). 
 + 
 +Ça y est, vous avez maintenant accès à votre base MySQL sous LibreOffice.
  
 ===== Notes ===== ===== Notes =====
Ligne 87: Ligne 124:
 ===== Voir aussi ===== ===== Voir aussi =====
   * Page principale de [[:​LibreOffice]]   * Page principale de [[:​LibreOffice]]
 +  * La page de création d'une base de données dans la [[https://​books.libreoffice.org/​en/​BG73/​BG7302-CreatingADatabase.html#​toc9 |documentation de LO 7.3 (en)]] qui reprend toutes les connexions.
 +  * Le [[https://​wiki.documentfoundation.org/​images/​4/​43/​GuideBase64.pdf |guide 6.4 en français]] avec les mêmes informations à la page 70.
  
 ---- ----
  
 //​Contributeurs : [[:​utilisateurs:​Yeffries]],​ [[:​utilisateurs:​l_africain|L'​Africain]],​ [[:​utilisateurs:​Poupoul2]]//​ //​Contributeurs : [[:​utilisateurs:​Yeffries]],​ [[:​utilisateurs:​l_africain|L'​Africain]],​ [[:​utilisateurs:​Poupoul2]]//​
  • libreoffice_mysql.1426530512.txt.gz
  • Dernière modification: Le 16/03/2015, 19:28
  • par L'Africain