Acceder a des tables MySQL (ou autres) avec unixODBC et OpenOffice 1.1

Avertissement Cet article est présent sur ce site à but d'archive.
Les informations y étant contenues peuvent y être obsolètes.

Récuperer les Logiciels

Veuillez vous rendre sur http://www.unixodbc.org afin d'y recuperer la derniere version de unixODBC (version source : unixODBC-2.x.x.tar.gz).

MyODBC est une interface générique permettant la connection a de nombreux Systèmes de Gestion de Bases de Données (SGBD). il permet par exemple a partir de PHP ou de OpenOffice, de se connecter sur une base de données SQL Server ou access depuis un client/serveur Unix. On en comprend très vite l´interêt pour assurer une interoperabilité entre les différents Systèmes d'exploitation. D'Autant plus que unixODBC fonctionne sous macOS X.

Le pilote MySQL pour ODBC est nécessaire pour la connection aux bases MySQL : http://www.mysql.com/downloads/api-myodbc.html: la version stable de préférence (actuellement 3.51). Il permet tout simplement a l'interface myODBC de se connecter a un serveur MySQL.

Pour pouvoir installer OpenOffice correctement, il faut un environnement d'execution Java 2, http://java.sun.com/j2se/1.4.2/download.html. (choisir j2se_1.4.2 Version JRE , linux self-extracting file).

Et enfin OpenOffice.org 1.1 : http://fr.openoffice.org/about-downloads.html#li. (Un fichier qui s'appele OOo_1.1.0_LinuxIntel_install_fr.tar.gz). OpenOffice.org est une alternative Gratuite et libre a la suite bureautique Office de Microsoft . Elle permet en outre d'ouvrir les fichiers Office (.doc, .xls, .ppt, …) et est disponible pour la plupart des systmes d'exploitation existants.

Installation de unixODBC

On peut décompresser, compiler et installer unixODBC-2.x.x en utilisant les commandes suivantes

      cd ~utilisateur/download/
      tar zxf unixODBC-2.x.x.tar.gz -C /usr/src
      cd /usr/src/unixodbc-2.x.x/
      ./configure
      make
      make install

Installation de myODBC

Pour installer MyODBC avec le paquetage de chez mysql.com on procede de la facon suivante :

      cd ~utilisateur/download/
      tar zxf MyODBC-3.51.06-pc-linux-gnu-i686.tar.gz -C /usr/src
      cd /usr/src/MyODBC-3.51.06-pc-linux-gnu-i686
      cp lib* /usr/lib
      (ou)
      cp lib /usr/local/lib
      cp odbc.ini /etc
      ldconfig

Plus d'informations sont disponibles dans le fichier INSTALL-BINARY . Pour les personnes ayant copié les librairies dans /usr/local/lib, des liens symboliques sont a faire dans /usr/lib et sur certaines distributions, des liens symboliques (2 ou 3) de /usr/lib vers /usr/local/lib sont a faire.

Pour pouvoir utiliser MyODBC, le fichier /etc/odbcinst.ini doit etre créé : ce dernier doit contenir ceci :

A noter que vous devez remplacer la ligne driver par l'emplacement de votre librairie MyODBC.

      [MySQL]
      Description     = ODBC for mySQL
      Driver          = /usr/local/lib/libmyodbc3.so
      FileUsage       = 1

Communication ODBC / MySQL

Dans un premier temps (dans le cas d'une base mySQL distante) nous devons creer un utilisateur qui ai les droits d'acceder a la base que l'on souaite modifier via ODBC.

Pour cela on peut utiliser phpMyAdmin ou utiliser la commande mysql sur le serveur en utilisant la requete SQL suivante

      GRANT SELECT , INSERT , UPDATE , DELETE , CREATE , DROP , FILE , INDEX , ALTER ,
      CREATE TEMPORARY TABLES ON * . *
      TO "utilisateur"@ "%"IDENTIFIED BY "motdepasse"
      WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 ;

sur le client maintenant , editons le fichier /etc/odbc.ini pour y ajouter les lignes concernant cette source de données

      [MySQL-test]
      Description     = Base de donnees test
      Driver          =  MySQL
      Server          = 192.168.133.42
      Database        = mabase
      Port            = 3306

Nous pouvons maintenant tester la connection avec l'executable isql (installé avec unixODBC)

      stux@linstux:/home/stux # isql MySQL-test utilisateur motdepasse
      +---------------------------------------+
      | Connected!                            |
      |                                       |
      | sql-statement                         |
      | help [tablename]                      |
      | quit                                  |
      |                                       |
      +---------------------------------------+
      SQL> SELECT * FROM menu;
      +----+--------+
      | mid| id_pere|
      +----+--------+
      | 1  | 5      |
      | 2  | 0      |
      | 3  | 2      |
      | 4  | 0      |
      | 5  | 3      |
      | 6  | 2      |
      | 7  | 1      |
      | 8  | 2      |
      | 9  | 1      |
      | 10 | 8      |
      | 11 | 0      |
      | 12 | 0      |
      | 13 | 0      |
      | 14 | 11     |
      +----+--------+
      14 rows affected
      14 rows returned
      SQL>

UnixODBC est dès à Présent installé et configuré. Sortez du client en utilisant CTRL-C

Installation de J2RE 1.4.x

Lorsque vous êtes dans le repertoire ou vous avez téléchargé j2re-1_4_x_xx-linux-i586.bin, executez ce fichier :

L'environnement Java va alors être décompressè dans un repertoire nommè j2re1.4.x_xx ; Dèplacez le dans /usr/local/ , et creez un lien symbolique dans /usr :

      ./j2re-1_4_x_xx-linux-i586.bin
      mv j2re1.4.x_xx /usr/local
      cd /usr
      ln -s local/j2re1.4.x_xx java

Accessoirement, on peut installer le plug-in java pour Netscape 7 (procedure identique pour mozilla 1.x)

      cd /usr/lib/netscape/plugins
      ln -s /usr/local/j2re1.4.x_xx/plugin/i386/ns610/libjavaplugin_oji.so

Installation d'OpenOffice.org 1.1 (Réseau)

On entend installation réseau d'openoffice , le fait de l'installer pour tous les utilisateurs d'une machine ou d'un reseau local

Décompressez OOo_1.1.0_LinuxIntel_install_fr.tar.gz dans un repertoire de votre choix. et rendez vous a ce repertoire :

      tar zxf OOo_1.1.0_LinuxIntel_install_fr.tar.gz -C /tmp
      cd /tmp/OOo_1.1.0_LinuxIntel_install_fr
      ./setup -net

Suivez simplement les instructions d'installation, en remarquant au passage que l'environnement Java 2 installé précédemment figure dans la liste des environnements d'execution.

Loguez vous en utilisateur simple (session KDE ou Gnome) , et vous pourrez alors proceder a l'installation pour cet utilisateur (quasiment instantané). Si les menus n'apparaisent pas dans le gestionnaire de fenêtres , executez alors la commande suivante :

      /opt/Open0ffice1.1.0/setup

Note : Préferez un repertoire caché pour l'installation utilisateur de OOo : /home/utilisateur/.ooo/

Utilisation d'OpenOffice.org pour gerer des tables SQL

Une fois OpenOffice.org lancé (en tant que writer), appuyer sur F4 pour afficher les sources de données disponibles. La source de données configurée précédemment apparaît . on peut alors séléctionner une table et la modifier a notre convenance (ajout, modification,suppression d'enregistrements).

On peut maintenant creer une table avec l'assistance d'ebauche de table (comme sous access) : faites un clic droit sur votre source de données,→Tables et selectionnez “creer une nouvelle table (Mode Ebauche)””. Creez vos différents champs , et cliquez sur enregistrer. le nom de la nouvelle table est alors demandé

Et finalement on peut faire une requete en mode ebauche en faisant un clic droit sur requetes et en séléctionnant Nouvelle Requete (Mode Ebauche).

Pour couronner le tout et pour une gestion plus simple de l'ajout, ou l'affichage d'enregistrements d'une table , il est egalement possible de créer un formulaire. pour cela , il suffit de cliquer du bouton droit sur une table et de séléctionner Creer un autopilote de formulaire. De la meme facon afin d'exporter les enregistrements (en version imprimable) d'une table on peut demander la creation d'un formulaire d'etat.

Conclusion et avantages.

OpenOffice se révele être une alternative intéressante ainsi qu'un excellent outil pour l'accès aux bases de données. A utiliser a la maison ou en milieu professionnel pour la creation d'interfaces web dynamiques, et couplé a un bon editeur Web (Quanta, Zend Studio, ou autre), on fait des merveilles et sans effort …

La procédure est identique pour les version ultérieures des logiciels présentés précédemment.

 
unix/linux/utilisation-de-unixodbc-openoffice.org-et-mysql.txt · Dernière modification: 2017/07/27 16:08 (édition externe)
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki