Manuel du propriétaire | OPEN OFFICE UTILISATION D UNE BASE DE DONNEES SQLITE Manuel utilisateur

Ajouter à Mes manuels
17 Des pages
Manuel du propriétaire | OPEN OFFICE UTILISATION D UNE BASE DE DONNEES SQLITE Manuel utilisateur | Fixfr
Utilisation d'une base de données
SQLite
avec OpenOffice.org
Révision [n°1] – 09/05/2004
Réalisé avec : OOo 1.1.0
Plate-forme / Os : Toutes
Distribué par le projet Fr.OpenOffice.org
OpenOffice.org Documentation Project How-To
Table des Matières
1 Introduction......................................................................................................................................3
1.1 Qu'est-ce que SQLite ?.......................................................................................................... 3
1.2 Pourquoi utiliser SQLite avec OpenOffice.org ?.................................................................... 3
2 Installation du driver ODBC pour SQLite........................................................................................ 4
2.1 Sous Linux.............................................................................................................................. 4
2.2 Sous Windows........................................................................................................................ 7
3 Création d'un fichier de données.................................................................................................... 8
3.1 Utilisation de « sqlite »............................................................................................................8
3.2 Utilisation de « SQLite Database Browser ».......................................................................... 9
4 Configuration de la source dans ODBC.......................................................................................... 9
4.1 Sous Linux.............................................................................................................................. 9
4.2 Sous Windows...................................................................................................................... 10
5 Configuration de la source de données dans OpenOffice.org......................................................10
6 Création des tables de la base de données dans OpenOffice.org............................................... 11
7 Utilisation d'une base de données SQLite avec OpenOffice.org.................................................. 14
7.1 Accès à la base de données par le panneau de sources de données.................................14
7.2 Création de requêtes............................................................................................................ 15
7.3 Création de formulaires........................................................................................................ 16
7.4 Echanges de fichiers de données entre utilisateurs.............................................................16
8 Crédits .......................................................................................................................................... 17
9 Licence.......................................................................................................................................... 17
Fr.OpenOffice.org
2 / 17
OpenOffice.org Documentation Project How-To
1 Introduction
Ce guide a pour principal objectif d'aider les utilisateurs de OpenOffice.org à utiliser une base de
données SQLite comme source de données avec OpenOffice.org.
1.1 Qu'est-ce que SQLite ?
SQLite (http://www.sqlite.org/) est un moteur de base de données libre qui implémente la plupart
des spécifications du standard SQL92.
La principale différence de SQLite avec PostgreSQL et MySQL tient au fait qu'une base de
données entière avec toutes ses tables est stockée dans un seul et unique fichier. Une autre
particularité est que l'accès à ce fichier de données ne nécessite aucun serveur de base de
données.
A cela on peut rajouter qu'il est rapide (deux fois plus que PostgreSQL et MySQL pour des
opérations courantes), peu gourmand en mémoire, et peut gérer des bases de données de
grandes dimensions.
L'accès aux données peut se faire de différentes manières :
Une interface C/C++ (bibliothèque Linux ou dll windows) qui permet aux programmes d'accéder
à une base SQLite.
Un programme en ligne de commande (sqlite : disponible sous Linux et windows) qui permet
de créer et d'administrer les fichiers de bases de données.
Le langage PHP pour lequel il existe un module spécifique, et dont la prochaine version (PHP
5) permettra d'accéder directement à une base SQLite.
Un pilote ODBC (Linux et windows) qui permet à n'importe quelle application supportant ce
standard d'accéder à une base de données SQLite.
Dans ce guide, nous parlerons essentiellement du pilote ODBC qui permet justement à
OpenOffice.org d'utiliser une base de données SQLite. Nous évoquerons rapidement le
programme « sqlite » en ligne de commande au paragraphe 3.1 pour la création initiale du fichier
de données.
1.2 Pourquoi utiliser SQLite avec OpenOffice.org ?
L'utilisation d'une base de données SQLite présente de nombreux avantages :
La base de données se trouve dans un seul fichier (contrairement à DBase qui crée un fichier
par table) et peut ainsi être échangé facilement entre différents utilisateurs.
Il n'y a pas besoin d'un serveur de bases de données (local ou distant) pour accéder à la base.
Le driver ODBC existant aussi bien pour Linux que pour windows, les utilisateurs de ces deux
environnements peuvent accéder aux données et se les échanger.
Des interfaces graphiques très sophistiquées (qui n'ont rien à envier à msaccess) peuvent être
développées grâce aux formulaires, requêtes, états et macros de OpenOffice.org. Ces
interfaces sont stockées dans des fichiers OpenOffice séparés des données, et peuvent
également être échangées entre utilisateurs, que ceux-ci travaillent sous Linux ou windows.
Mais SQLite présente également quelques inconvénients :
Fr.OpenOffice.org
3 / 17
OpenOffice.org Documentation Project How-To
SQLite ne permet pas de modifier la structure d'une table après sa création (voir chapitre 6).
Cela signifie que vous ne pouvez pas rajouter de champs ni en modifier les propriétés une fois
que la table est créée. Vous devez donc avoir bien réfléchit à la structure de vos tables avant de
les créer !
Il est obligatoire de passer par un driver ODBC pour accéder à une base SQLite depuis
OpenOffice.org, ce qui rend cette opération un peu compliquée. Il faudra d'abord la déclarer
dans le gestionnaire ODBC (voir chapitre 4), puis dans OpenOffice.org (voir chapitre 5).
Le fichier initial qui contiendra la base données doit être créé en-dehors d'OpenOffice.org en
utilisant d'autres outils (voir chapitre 3).
En résumé, les principaux avantages de l'utilisation de SQLite avec OpenOffice.org sont le format
de stockage des données et la portabilité d'un environnement à l'autre. Dans les inconvénients
cités, les deux derniers ne sont pas spécifiques à SQLite, mais sont liés à l'obligation de passer
par ODBC. Ils ne sont finalement pas si gênants que cela, car ils n'ont lieu que lors de la création
initiale de la base.
Remarque : Tous ceux qui ont été frustrés de ne pouvoir accéder à un fichier MDB sous Linux, ou
qui ont dû, avec difficultés, installer un serveur MySQL sur leur poste afin de concevoir une base
de données complexe, voient déjà les avantages de SQLite.
2 Installation du driver ODBC pour SQLite
Pour accéder à une base de données SQLite depuis OpenOffice.org, il est nécessaire d'installer le
driver ODBC spécifique. Ceci est incontournable, et le restera, sauf si un jour OpenOffice.org
intègre nativement SQLite ...
Le driver ODBC pour SQLite est indépendant du projet SQLite lui-même. Il est développé à part
par Christian Werner (chw@ch-werner.de) et vous le trouverez sur son site (http://www.chwerner.de/sqliteodbc/). Il existe aussi bien pour Linux que pour windows.
2.1 Sous Linux
Afin de pouvoir installer le driver ODBC pour SQLite, il faut avoir au préalable installé unixODBC et
SQLite.
UnixODBC :
Vous trouverez des paquetages tout faits dans la plupart des distributions. Pour une Mandrake,
par exemple, installez les rpm suivants : libunixODBC2-2.2.x-xmdk.i586.rpm, libunixODBC2-devel2.2.x-xmdk.i586.rpm, libunixODBC2-qt-2.2.x-xmdk.i586.rpm, unixODBC-2.2.x-xmdk.i586.rpm,
unixODBC-gui-qt-2.2.x-xmdk.i586.rpm.
Attention : Vérifiez que votre version de unixODBC est au moins la version 2.2.5. Une version
plus ancienne provoquera des plantages de OOo lorsqu'on utilise le driver ODBC pour SQLite. Si
votre version est plus ancienne (cas de Debian ou de la Mandrake 9.1), il vous faudra télécharger
et installer une version plus récente de unixODBC.
Si vous ne trouvez pas de paquetages tout faits suffisamment récents pour votre distribution,
Fr.OpenOffice.org
4 / 17
OpenOffice.org Documentation Project How-To
téléchargez (http://www.unixodbc.org/) et compilez les sources.
Attention : Il semble que la compilation à partir des sources n'installe pas l'utilitaire graphique
ODBCConfig dont il est question plus loin. Vous aurez donc à configurer ODBC « à la main » !
SQLite :
Pour les utilisateurs de Mandrake, RedHat et autres distributions à base de rpm, vérifiez d'abord si
votre distribution n'intègre pas déjà les rpm pour SQLite.
Attention : SQLite évolue très vite et les paquets présents dans les distributions fournissent
souvent une version de SQLite qui date un peu (par exemple la Mandrake 10.0 intègre SQLite
2.8.6). Vu que les dernières versions du driver ODBC sont basées sur une version récente de
SQLite (2.8.13 pour la version 0.6.2 du driver), il vaut mieux installer une version plus récente que
celle présente dans votre distribution. En théorie le driver SQLite pour ODBC peut être compilé
avec SQLite 2.8.6, mais l'utilisation de cette version engendrera quelques limitations (pas de
support des champs auto-incrémentés par exemple).
Pour cela il vous faudra télécharger (http://www.sqlite.org/download.html) et installer les
paquetages « sqlite-x.x.x-x.i386.rpm » et « sqlite-devel-x.x.x-x.i386.rpm ». Par la même occasion,
cela vous installera le programme en ligne de commande « sqlite » dont il est question au chapitre
3.
Attention : Pour les utilisateurs de Mandrake (9.1, 9.2 ou 10.0) l'installation de ces rpm vous
indiquera qu'il manque « libreadline.so.4 » même si elle est installée, car les rpm cités plus haut
ne cherchent pas cette bibliothèque là où Mandrake l'installe. Vérifiez d'abord avec rpmdrake que
la bibliothèque « libreadline4 » est bien installée (sinon installez-la), puis installez les rpm sqlite en
ligne de commande en forçant la non-détection des dépendances :
# rpm -ivh sqlite-devel-2.8.x-x.i386.rpm –nodeps
# rpm -ivh sqlite-2.8.x-x.i386.rpm --nodeps
Si vous êtes sous Debian ou une autre distribution n'acceptant pas les rpm, téléchargez
(http://www.sqlite.org/download.html) et compilez les sources (sqlite-x.x.x.tar.gz).
SQLiteODBC :
Etant donné qu'on ne trouve pour l'instant pas de paquetages précompilés (RPM ou autres) tout
faits pour sqliteodbc, le mieux est de télécharger le code source sur le site de l'auteur
(http://www.ch-werner.de/sqliteodbc/). Téléchargez une version au moins égale à la 0.6.1, car les
plus anciennes offrent des possibilités limitées avec OpenOffice.org.
Une fois le fichier tar.gz téléchargé, il faut le décomprimer, ce qui va créer un dossier sqliteodbc0.6.x. Ensuite il faut ouvrir un terminal et se placer dans ce dossier. Puis il suffit de taper les
commandes classiques pour la compilation et l'installation :
$
$
$
#
./configure –prefix=/usr
make
su
make install
Remarque : --prefix=/usr est optionnel et surtout utile pour les distributions Mandrake. Il permet
que le driver s'installe dans /usr/lib plutôt que dans /usr/local/lib.
Fr.OpenOffice.org
5 / 17
OpenOffice.org Documentation Project How-To
Remarque : Certaines dépendances sont nécessaires à la compilation du driver. Par exemple, si
la compilation échoue en disant que ltdl.h n'a pas été trouvé, il vous faudra installer la bibliothèque
correspondante (libltdl3-devel sous Mandrake).
Vous pouvez alors effacer le dossier de compilation du code source.
Pour finir, il faut déclarer le driver installé dans unixODBC. Pour ceci, il faut lancer l'utilitaire
ODBCConfig comme root. Ouvrez un terminal et tapez ce qui suit :
$ su
# ODBCConfig
Vous devez obtenir l'affichage de la fenêtre suivante :
Allez dans l'onglet « Drivers » et choisissez « Add... ». Remplissez alors les champs de la fenêtre
de propriété du driver exactement comme sur la copie d'écran suivante :
Fr.OpenOffice.org
6 / 17
OpenOffice.org Documentation Project How-To
Puis validez avec l'icône la plus à gauche en haut de la fenêtre. Votre nouveau driver apparaît
maintenant dans l'onglet « Drivers » :
Vous pouvez maintenant quitter ODBCConfig. L'installation du driver sous Linux est terminée.
Remarque : Pour ceux qui n'ont pas ODBCConfig ou qui préfèrent réaliser cette configuration « à
la main », il faut éditer le fichier « /etc/odbcinst.ini » comme root et ajouter les lignes suivantes :
[SQLite]
Description
= ODBC pour SQLite
Driver
= /usr/lib/libsqliteodbc.so
Setup
= /usr/lib/libsqliteodbc.so
FileUsage
= 1
CPTimeout
=
CPReuse
=
Astuce : Le site http://www.ch-werner.de/sqliteodbc/ fournit également le code source du driver au
format srpm. Ce fichier doit permettre de créer facilement un rpm pour votre distribution en tapant
l'instruction suivante :
# rpmbuild --rebuild sqliteodbc-0.60-1.src.rpm
Vous devriez obtenir un rpm prêt à être installé et qui, selon l'auteur, configure lui-même le driver
dans ODBC ! Ceci permettant d'éviter les étapes qui viennent d'être décrites.
2.2 Sous Windows
Sous windows cette étape est plus facile. Il suffit de télécharger le fichier sqliteodbc.exe et de
l'exécuter. Le driver s'installe automatiquement et est rajouté automatiquement dans ODBC. Vous
pourrez le vérifier en lançant « Source de données ODBC » depuis le panneau de configuration :
Fr.OpenOffice.org
7 / 17
OpenOffice.org Documentation Project How-To
Remarque : Un deuxième driver (UTF-8) expérimental est installé. Il vaut mieux se contenter du
driver normal.
3 Création d'un fichier de données
Le fichier initial qui contiendra la base de données ne peut pas être créé depuis OpenOffice.org.
Pour cela, il faudra utiliser soit l'utilitaire « sqlite » en ligne de commande, soit un des logiciels tiers
qui sont répertoriés à cette adresse : http://www.sqlite.org/cvstrac/wiki?p=SqliteTools
L'utilitaire « sqlite » devrait être déjà installé si vous utilisez Linux et avez installé SQLite en rpm.
Sinon pour les autres, vous trouverez tout ce qu'il faut pour l'installer sous Linux ou windows sur la
page de téléchargement du site de SQLite (http://www.sqlite.org/download.html).
Parmi les autres logiciels, je vous recommande « SQLite Database Browser »
(http://sqlitebrowser.sourceforge.net/) qui est graphique, tout simple et existe aussi bien pour
Linux que pour windows.
Ces deux solutions existant sous Linux et windows, leur utilisation est exactement identique dans
les deux environnements.
3.1 Utilisation de « sqlite »
Il faut ouvrir un terminal et aller dans le dossier où vous voulez créer votre base de données.
Ensuite saisissez les instructions suivantes :
$ sqlite nomdemabase
SQLite version 2.8.12
Enter ".help" for instructions
sqlite> .database
sqlite> .exit
Vous pouvez alors vérifier que le fichier a bien été créé dans votre répertoire. Le nom du fichier
n'a pas besoin d'extension, mais vous pouvez lui donner l'extension « .db » afin de repérer qu'il
s'agit d'une base de données.
Fr.OpenOffice.org
8 / 17
OpenOffice.org Documentation Project How-To
Le programme en ligne de commande « sqlite » permet également de créer les tables et les index,
de saisir et d'afficher des données, et de faire des requêtes. Mais cela nécessite de connaître le
langage SQL, et il est plus pratique pour les novices de réaliser ces opérations depuis
OpenOffice.org.
3.2 Utilisation de « SQLite Database Browser »
Après avoir décompacté l'archive, il faut lancer l'exécutable « sqlitebrowser » et sélectionner « File
/ New Database » ou l'icône correspondante :
Ensuite, il suffit de choisir le répertoire, de rentrer le nom du fichier puis de cliquer sur « Save ».
Ce programme permet aussi de créer les tables, les champs et les index, de saisir des données et
de les visualiser. Il est assez pratique pour cela, mais présente l'inconvénient de ne pas montrer la
liste des types de champs possibles lors de la création des champs. Dans ce cas aussi, on
préfèrera donc le faire ultérieurement à partir de OpenOffice.org.
4 Configuration de la source dans ODBC
Cette étape consiste à déclarer dans ODBC la base nouvellement crée, en lui indiquant qu'il faut
utiliser le driver SQLite (installé au chapitre 2) pour y accéder. Cette opération est à renouveler
pour chaque nouvelle base SQLite à laquelle on veux accéder par ODBC.
4.1 Sous Linux
Il faut lancer « ODBCConfig », aller dans l'onglet « User DSN » et choisir « Add... ». Apparaît alors
une fenêtre dans laquelle vous devez choisir le driver SQLite. Dans la fenêtre suivante vous
devrez saisir un nom pour cette connexion (par exemple le nom de votre base) et indiquer le
chemin d'accès complet au fichier que vous avez créé au paragraphe 3.
Fr.OpenOffice.org
9 / 17
OpenOffice.org Documentation Project How-To
Validez l'écran et vous devriez voir votre nouvelle source de données dans l'onglet « User DSN ».
Attention : Si à la place de cette fenêtre vous obtenez un message d'erreur (« Could not construct
a property list for (SQLite) »), c'est que votre version du driver est trop ancienne. Installez la
version 0.6.0, ou supérieure, qui corrige ce bug.
Pour ceux qui n'ont pas ODBCConfig ou qui préfèrent configurer cela « à la main », lancez votre
éditeur favori, ouvrez (ou créez) le fichier « .odbc.ini » dans votre répertoire home, et ajoutez-y
les lignes suivantes :
[Ma Base]
Description
= Ma base d'essais
Driver
= SQLite
Database
= /home/yves/nomdemabase.db
Timeout
= 1000
StepAPI
= No
Remarque : Si cette source de données doit être accessible à tous les utilisateurs du système, il
vous faudra lancer ODBCConfig comme root et ajouter la source dans l'onglet « System DSN » ou
« Source de données système », ou éditer comme root le fichier « /etc/odbc.ini ».
Vous êtes maintenant prêt à accéder à votre base de données depuis OpenOffice.org !
4.2 Sous Windows
Ouvrez la « Source de données ODBC » et allez dans l'onglet « Source de données utilisateur ».
Choisissez « Ajouter... » et commencez par sélectionner le driver « SQLite ODBC Driver ». Dans
la fenêtre suivante, saisissez le nom de cette source de données (Data Source Name) et le
chemin d'accès complet à votre fichier de données (Database Name), ou sélectionnez-le en
parcourant le système grâce au bouton « Browse... ».
Validez le tout et quittez ODBC. Il ne vous reste plus qu'à lancer OpenOffice.org pour pouvoir
accéder à votre base de données !
5 Configuration de la source de données dans OpenOffice.org
Maintenant vous pouvez enfin démarrer OpenOffice.org. Avant de pouvoir accéder à votre
nouvelle base SQLite et lui ajouter des tables, il faut configurer la « source de données ». Pour
ceci, allez dans le menu « Outils » et sélectionnez « Sources de données... ».
Fr.OpenOffice.org
10 / 17
OpenOffice.org Documentation Project How-To
Dans la fenêtre qui s'affiche, cliquez sur « Nouvelle source de données » :
•
•
•
Dans « Nom », à la place de « Source de données 1 » saisissez le nom que vous voulez
donner à votre source de données.
Dans « Type de BD », choisissez ODBC.
Pour « URL de la source de données », sélectionnez le bouton de droite avec les trois points
(...). Ceci ouvre une fenêtre dans laquelle vous voyez toutes les sources de données déjà
déclarées dans ODBC. Choisissez celle que vous avez créé au chapitre précédent.
Voilà, votre base de données SQLite est maintenant accessible depuis OpenOffice.org !
Cliquez ensuite sur « Appliquer » sans quitter cette fenêtre, car elle va nous servir à créer les
tables et les champs de la base.
6 Création des tables de la base de données dans OpenOffice.org
Dans la fenêtre « Gestion des sources de données », allez dans l'onglet « Tables ». Pour créer
votre première table, sélectionnez l'icône « Nouvelle ébauche de table ». Vous obtenez alors une
fenêtre qui va vous permettre de créer les champs de la nouvelle table :
Fr.OpenOffice.org
11 / 17
OpenOffice.org Documentation Project How-To
•
Dans la colonne « Nom de champ », saisissez le nom du nouveau champ.
•
Dans la colonne « Type de champ », choisissez son type grâce à la liste déroulante.
•
Dans la zone inférieure de « Propriétés du champ », indiquez si la saisie est obligatoire ou
non, donnez la valeur prise par défaut par ce champ et choisissez son format.
Créez de cette manière autant de champs que nécessaire.
Attention : Pour que OpenOffice.org soit capable d'ajouter des enregistrements dans votre table,
il vous faut obligatoirement créer une clé primaire. Dans une table, le premier champ est souvent
un identifiant unique (id_membre) qu'il faut définir comme « clé primaire ». Pour ceci, un clic droit
sur l'en-tête de ligne de ce champ fera apparaître un menu contextuel dans lequel il faut
sélectionner « clé primaire ».
Si ce champ est du type « integer », alors sa valeur sera automatiquement incrémentée lors de
chaque nouvel ajout d'enregistrement dans cette table (voir paragraphe 7.1).
Attention : La création d'une clé primaire sur un champ de type « integer » ne fonctionne que
depuis la version 0.6.1 du driver ODBC pour SQLite.
Une fois que vous avez créé tous vos champs et choisi votre clé primaire, sauvegardez votre
nouvelle table en cliquant sur l'icône représentant une disquette ( ). Saisissez alors le nom de
votre table et validez.
Attention : Une fois que vous aurez enregistré votre table, vous ne pourrez plus la modifier !
C'est-à-dire que vous ne pourrez plus modifier les propriétés des champs, ni en rajouter ou en
Fr.OpenOffice.org
12 / 17
OpenOffice.org Documentation Project How-To
supprimer !
Cette contrainte assez gênante est propre à SQLite qui ne gère pas la commande SQL « ALTER
TABLE », et non pas au driver ODBC. Cette limitation, voulue par les auteurs afin d'obtenir un
moteur de base de données aussi léger que possible, sera peut-être levée dans une version
future. En attendant, vérifiez bien la structure de votre table avant de l'enregistrer.
Si vous voulez modifier une table, la seule solution est de la recréer et de l'enregistrer sous un
autre nom. De cette manière, vous pourrez transférer les données qu'elle contient dans la
nouvelle table.
Une fois que vous avez créé une table, vous pouvez créer un index pour accélerer les requêtes et
les tris sur de gros volumes de données. Pour ceci, sélectionnez votre table dans l'onglet
« Tables » de la fenêtre de « Gestion des sources de données » et cliquez sur l'icône du milieu
« Editer la table ». Vous vous trouvez à nouveau dans la fenêtre qui affiche les champs de votre
table. Sélectionnez alors la quatrième icône « Ebauche d'index ... » et vous obtiendrez la fenêtre
suivante :
Cliquez sur la première icône « Nouvel index » et saisissez un nom pour cet index. Dans la
colonne « Champ d'index » choisissez le(s) champ(s) à indexer, l'ordre de tri, et cochez la case
« Unique ». Enregistrez ensuite en cliquant sur la quatrième icône « Enregistrer l'index actif ».
Attention : Lors de la sauvegarde de l'index, il se peut que vous obteniez un message d'erreur du
type « Erreur lors de la connexion à la source de données ». Valider le message, quittez la fenêtre
d'index puis la fenêtre d'édition de table. Retournez ensuite dans la fenêtre d'index, et vous verrez
que votre index a malgré tout été créé, mais que la case « Unique » n'est plus cochée.
Ceci est une incompatibilité connue entre le driver ODBC pour SQLite et la manière dont
OpenOffice.org envoit une requête de création d'index à ODBC ! Ce problème a été identifié et un
patch a déjà été proposé. Il devrait être pris en compte dans la prochaine version de
OpenOffice.org.
Donc si vous avez absolument besoin de créer un index, utilisez plutôt « sqlite » ou «
sqlitebrowser » qui permettent de le faire sans aucun problème.
Voilà, la structure de votre base de données est créée et OpenOffice.org peut maintenant y
accéder et vous permettre d'y ajouter des données, puis de les exploiter de différentes manières.
Fr.OpenOffice.org
13 / 17
OpenOffice.org Documentation Project How-To
7 Utilisation d'une base de données SQLite avec OpenOffice.org
Ce chapitre n'est pas spécifique aux bases de données SQLite. Il a pour but de présenter
succintement les différentes possibilités existantes et de préciser quelques limitations ou
possibilités propres à SQLite.
7.1 Accès à la base de données par le panneau de sources de données
La manière la plus simple d'accéder à votre base de données dans OpenOffice.org est d'ouvrir le
« panneau de sources de données » grâce à l'icône correspondante que l'on trouve dans la barre
verticale de gauche dans writer et calc.
Vous trouverez le nom de votre base tel que vous l'avez déclaré dans OpenOffice.org (voir
chapitre 5) dans la partie gauche du panneau de source de données. Si vous parcourez
l'arborescence en cliquant sur les « + », vous trouverez une rubrique « Tables » dans laquelle
vous pourrez sélectionner une table dont le contenu s'affichera dans le panneau de droite. Vous
pourrez alors modifier chaque enregistrement directement dans le tableau, ou en créer un
nouveau en complétant la dernière ligne symbolisée par « ∗ ».
Remarque : Si le premier champ de votre table est de type « integer » et que vous l'avez défini
Fr.OpenOffice.org
14 / 17
OpenOffice.org Documentation Project How-To
comme clé primaire (voir chapitre 6), il contiendra « <AutoChamp> » tant que vous n'aurez pas
validé la saisie de la ligne complète (« Entrée » après chaque champ). Après cette validation il
sera automatiquement incrémenté de 1 par rapport à la valeur de l'enregistrement précédent.
Attention : Cette possibilité d'auto-incrémentation des clés primaires de type « integer » n'est
possible que si vous utilisez la version 0.6.0 ou supérieure du driver ODBC pour SQLite.
7.2 Création de requêtes
La création de requêtes peut également se faire depuis le panneau de sources de données.
Afficher la rubrique « Requêtes » de votre base dans le panneau de droite et cliquez dessus avec
le bouton droit de la souris. Dans le menu contextuel, choisissez « Nouvelle requête (mode
ébauche) » et vous obtiendrez l'ouverture d'une nouvelle fenêtre :
Vous devrez d'abord sélectionner toutes les tables constituant votre requête, en les choisissant
dans la liste puis en cliquant sur « Ajouter ». Ensuite vous pourrez créer les liaisons en faisant
glisser le champ d'une table sur le champ qui lui correspond dans l'autre table.
Pour définir votre requête, sélectionnez les champs des tables qui la composent et glissez-les
jusqu'au tableau qui occupe la partie inférieure de la fenêtre. Pour chaque champ ajouté à la
requête, ce tableau vous permettra de choisir l'ordre de tri, une fonction de regroupement, des
critères, etc ...
Les différentes icônes vous permettront ensuite d'afficher le résultat de votre requête, de la
sauvegarder, de l'éditer en mode SQL, ...
Fr.OpenOffice.org
15 / 17
OpenOffice.org Documentation Project How-To
La création de requêtes offre de nombreuses possibilités qu'il n'est pas possible de détailler ici.
Attention : La possibilité d'ajouter plusieurs tables lors de la création d'une requête sur une base
SQLite, et donc de créer des requêtes multi-tables, n'est possible que depuis la version 0.6.0 du
driver ODBC pour SQLite.
7.3 Création de formulaires
La création de formulaires au sein de documents writer ou calc est une possibilité très puissante
qui permet de créer une véritable interface graphique à votre base de données. Les possibilités et
les applications possibles sont tellement nombreuses qu'il n'est pas question de les aborder dans
ce document.
Vous
trouverez
dans
l'aide
de
OpenOffice.org
et
sur
http://fr.openoffice.org/Documentation/Index.html des informations précieuses sur la manière de
les réaliser.
La création de sous-formulaires décuple encore les possibilités. Vous vous reporterez à ce
document pour apprendre à les utiliser.
Attention : Pour créer des sous-formulaires dans des formulaires, il est nécessaire d'utiliser des
« paramètres nommés » afin de faire le lien entre les différentes tables. Pour ceci vous devrez
utiliser une macro dont l'installation et l'utilisation est décrite dans le document suivant : Paramètre
Nommés . Cette macro fonctionne parfaitement avec les bases SQLite.
7.4 Echanges de fichiers de données entre utilisateurs
Grâce à la disponibilité du driver ODBC pour SQLite aussi bien sous Linux que sous windows (de
même que OpenOffice.org, bien sûr !), une base de données SQLite peut être facilement
échangée entre des utilisateurs des deux environnements.
Il faut bien sûr que chacun ait installé le driver ODBC, qu'il y déclare le fichier SQLite auquel il
veux accéder, puis qu'il déclare cette source de données dans OpenOffice.org.
Des fichiers sxw ou sxc contenant des formulaires et des macros peuvent également être
échangés entre utilisateurs des deux environnements.
Attention : Pour que les formulaires fonctionnent correctement chez chaque utilisateur, il faut
absolument que chacun donne exactement le même nom à la source de données lors de sa
création (voir chapitre 5).
Fr.OpenOffice.org
16 / 17
OpenOffice.org Documentation Project How-To
8 Crédits
Auteur : Yves Chaufour
Remerciements : Je remercie tout particulièrement Christian Werner, l'auteur du driver
ODBC pour SQLite. Lorsque j'ai commencé à tester l'utilisation d'une base SQLite avec
OpenOffice.org grâce à son driver, j'ai rencontré de grandes difficultés dûes à des bugs et
à des limitations très gênantes du driver. J'ai pris le parti de signaler tous mes problèmes à
l'auteur. Celui-ci m'a répondu patiemment et a corrigé un à un tous les problèmes que je lui
avais signalé. Depuis il a sorti trois nouvelles versions de son driver (à ce jour), ce qui
permet maintenant d'utiliser une base SQLite de manière tout à fait satisfaisante avec
OpenOffice.org.
Je remercie également Tony Galmiche et Serge Le Louarne qui se sont intéressés au sujet
et qui ont testé l'utilisation d'une base SQLite en même temps que moi. Leurs problèmes et
leurs remarques ont donc grandement contribué à la rédaction de ce document, qu'ils ont
également accepté de relire.
Merci également à Philippe Lefevre pour ses tests et sa relecture.
Intégré par : Sophie Gautier
Dernière modification : 09/05/2004
Contacts : Projet Documentation OpenOffice.org - Fr.OpenOffice.org
9 Licence
Appendix
Public Documentation License Notice
The contents of this Documentation are subject to the Public Documentation License Version
1.0 (the "License"); you may only use this Documentation if you comply with the terms of this License. A
copy of the License is available at http://www.openoffice.org/licenses/PDL.html.
The Original Documentation is “Utilisation d'une base de données SQLite avec
OpenOffice.org”. The Initial Writer of the Original Documentation is Yves Chaufour Copyright (C)2004.
All Rights Reserved. (Initial Writer contact(s):yves.chaufour@wanadoo.fr).
NOTE: The text of this Appendix may differ slightly from the text of the notices in the files
of the Original Documentation. You should use the text of this Appendix rather than the text found in the
Original Documentation for Your Modifications.
Fr.OpenOffice.org
17 / 17

Manuels associés