Création de deux bases de données, interfacées avec Base (LibreOffice / OpenOffice)
Retour vers l'accueil
Nous allons créer deux bases de données, bd_td_exercice et bd_personnelle, qui contiendront respectivement les données que je vous fournis pour les exercices et celles que vous alles produire vous-mêmes.
Création de la base de données bd_td_exercice
Veuillez trouver ici quelques indications pour apprendre à utiliser PostgreSQL.
Procédure d'installation détaillée:
-
Dézippez-le: il contient deux dossier → mettez-les dans le dossier du cours, dans un sous-dossier que vous nommerez 'bases_importees'
Ouvrez le logiciel pgAdmin III qui se trouve dans 'Programmes' > 'PostgreSQL 9.3' et connectez vous au serveur PostgreSQL 9.3 en utilisant le compte postgres et le mot de passe utilisé lors de l'installation. Cf. cette image
Ouvrez dans l'arboréscence de gauche les bases de données et, avec un click droit, ajouter une nouvelle base de données
Appelez la nouvelle base de données 'bd_td_exercice'; avant de clicker sur 'OK' vérifier que dans l'onglet 'Définition' le codage des caractères est bien à UTF-8
Sélectionnez la base de données 'bd_td_exercice' et activez-là par double click
Clicquez sur le bouton SQL (une sorte de loupe sur fonds orange)
Normalement, l'onglet 'Editeur SQL' qui s'ouvre est vide, sinon effacez le texte qu'il contient
Si le logiciel vous demande si vous voulez sauvegarder le texte que vous venez d'effacer à l'étape précédente, dites : non
A partir du menu 'Fichier' > 'Ouvrir', ouvrez les fichiers à installer qui se trouvent dans le dossier 'bases_importees' > 'bases_de_donnees_20141003' > 'bd_td_exercice' que vous venez de dézipper
Ouvrir dans le fichier schema_objets.sql
Une fois le fichier ouvert (vous pourrez donc lire dans l'onglet 'Editeur SQL' une série de scripts SQL prêts à exécution), exécuter avec le menu Requêtes > Exécuter ou avec le bouton avec la forme d'une fleche verte
Vous regardez la dernière ligne du message : “La requête a été exécutée avec succès en 391 ms, mais ne renvoie aucun résultat.” (le reste ne compte pas, même pas les lignes annulées) – Si vous voyez ce résultat (même si la durée en ms est différente) c'est bon.
En exécutant la requête SQL que vous voyez dans la boîte de dialogue SQL, le serveur PostgreSQL a créé les tables et ajouté les données que contient la requête SQL (instruction INSERT).
Vous répétez ensuite l'opération avec les fichiers : schema_parametres.sql et schema_vues_affichage.sql
Ouvrez le schema_parametres.sql
Si le logiciel vous demande si vous voulez sauvegarder le texte que vous venez d'effacer à l'étape précédente, dites : non – car le nouveau texte SQL doit remplacer celui qui vient d'être exécuté
Exécutez le script, etc.
ATTENTION : exécuter les trois fichiers .sql exactement DANS L'ORDRE INDIQUÉ
Fermez ensuite l'Editeur SQL'
Sélectionner le dossier 'Schémas' (image rouge et blanche) dans l'arboréscence de gauche et rafraichir (Affichage > Rafraîchir ou bouton vert et rouge en haut)
Déploiez l'arboréscence du schéma par un click et trois schémas (=dossiers) apparaîssent, en plus du schema 'public', contenant les tables et vues de votre base de données
Par exemple, ouvrir le schéma 'objets', puis selectionner 'Tables', vous verrez la liste des trois tables
Dépliez l'arboréscence des tables, sélectionnez la table 'Objet', clickquez sur le bouton en forme de table, bleu et blanc, à droite du bouton de la loupe SQL et vous verrez apparaître une table contenant les données
Voilà ! Si vous en êtes là, le plus difficile est fait, vous avez créé la base de données de l'exercice.
Création de la base de données bd_personnelle
Maintenant il faut créer une base de données vide ou, plus précisément, une base de données dont les tables du schéma 'objets' sont vides – car c'est là que vous allez mettre vos propres données.
A ce sujet, voici quelques indications importantes:
le rôle d'un schéma dans PostgreSQL est analogue à celui d'un dossier du disque dur: il réunit des tables, des fonctions, des séquences numériques, etc. tout comme un dossier réunit des fichier
pour nous permettre de travailler de manière collaborative, vous alimentez avec vos données les tables du schéma 'objets' de votre base de données personnelle, mais vous ne touchez pas aux autres schémas et aux données qu'ils contiennent.
ceci me permettra de mettre à jour le contenu des schémas 'parametres' et 'vues_affichage', vous pourrez les écraser et remplacer par les nouveaux, et on ne TOUCHERA PAS vos données
quant aux tables qui les contiennent (celles du schéma objets) vous en ferez des sauvegardes régulières selon la procédure que j'indiquerai plus pas
Ceci étant dit, il faut donc:
créer une nouvelle base de donnée que vous appellerez bd_personnelle
Activez cette base par double click
Clicquez sur le bouton SQL orange pour ouvrir l' Editeur SQL
S'il n'est pas vide, effacez le texte qu'il contient sans le sauvegarder
A partir du menu 'Fichier' > 'Ouvrir', ouvrez les fichiers à installer qui se trouvent dans le dossier 'bases_importees' > 'bases_de_donnees_20141003' > 'bd_td_personnelle' que vous venez de dézipper (et pas 'db_td_exercice')
Ouvrir dans le fichier schema_objets.sql
Une fois le fichier ouvert (vous pourrez donc lire dans l'onglet 'Editeur SQL' une série de scripts SQL prêts à exécution), exécuter avec le menu Requêtes > Exécuter ou avec le bouton avec la forme d'une fleche verte
En exécutant ce script SQL, le serveur PostgreSQL produit 3 nouvelles tables avec les séquences numériques associées, et alimente les tables avec les données que contient le script même (instruciton INSERT)
Vous répétez ensuite l'opération avec les fichiers : schema_parametres.sql et schema_vues_affichage.sql
ATTENTION : exécuter les trois fichiers .sql exactement DANS L'ORDRE INDIQUÉ
Fermez ensuite l'Editeur SQL'
Sélectionner le dossier 'Schémas' (image rouge et blanche) dans l'arboréscence de gauche et rafraichir (Affichage > Rafraîchir ou bouton vert et rouge en haut)
Déploiez l'arboréscence du schéma par un click et trois schémas (=dossiers) apparaîssent, en plus du schema 'public', contenant les tables et vues de votre base de données
Par exemple, ouvrir le schéma 'objets', puis selectionner 'Tables', vous verrez la liste des trois tables
Dépliez l'arboréscence des tables, sélectionnez la table 'Objet', clickquez sur le bouton en forme de table, bleu et blanc, à droite du bouton de la loupe SQL
Cette fois, la table est vide car c'est à vous de la remplir
Interfaçage avec le logiciel Base
Après avoir créé les deux bases de données ci-dessus, on peut accéder aux tables et aux données qu'elles contiennent en utilisant le logiciel client PgAdminIII. Toutefois, ce n'est pas très pratique pour saisir et visualiser les données.
Je vous ai donc créé une interface de saisie avec le logiciel Base de la suite LibreOffice que nous utiliserons comme client de la base de données pour la saisie et le travail sur les données, alors que nous utilisons le client PgAdminIII comme client pour la gestion de la base elle même (schémas, tables, requêtes SQL etc.)
Le logiciel serveur lui même, c'est-à-dire PostgreSQL, tourne toujours lorsque votre ordinateur est allumé (sans consommer de ressources) mais il n'est pas directement visible. Il devient visible grâce à des logiciels clients. On parle d'une architecture client–serveur.
PRINCIPE ESSENTIEL : Grâce à cette architecture logicielle on sépare soigneusement le stockage des données de leur visualisation. Je pourrai donc améliorer progressivement l'affichage dans Base et faire évoluer le système SANS TOUCHER À VOS DONNÉES qui se trouvent dans le schéma 'objets' et, plus tard, dans le schéma 'unites_de_connaissance'. Vos données resteront toujours sur votre ordinateur, et vous pourrez les sauvegarder régulièrement, mais le reste du système d'information pourra évoluer.
TUTORIELS : il existe plein de tutoriels pour apprendre à utiliser Base de LibreOffice/OpenOffice
Liste dans developpez.com
Questions et problèmes habituels
Procédure à suivre pour l'installation de l'interface
Télécharger le
fichier qui sert d'interface à la base de données
Le dézipper et le mettre dans le dossier du cours
Ouvrir le fichier avec le logiciel Base de la suite LibreOffice
ATTENTION: ce fichier ne marche qu'avec la version stable de LibreOffice: 4.2.6.3, et pas avec la version 4.3. Si vous avez installé la version de développement de LibreOffice (4.3), désinstallez-là et remplacez là par la version stable.
Dans l'interface principale de la base de données, dans le menu 'Edition' > Bases de données > Propriétés,
on voit l'adresse de connection vers la base de données PostgreSQL:
dbname=bd_td_exercice hostaddr=127.0.0.1 port=5432
ATTENTION que l'adresse est bien celle-ci et aucune autre (pas par ex. dbname=bd_td_exercice hostaddr=127.0.0.1 port=5432). Car pour les utilisateurs Mac j'ai hélas laissé cette adresse là par mégarde. Il faut mettre l'adresse correcte (nom de la base de données et port) pour que tout se passe bien
Dans le cadre de gauche, dans 'Formulaires',
on peut ouvrir le formulaire
objets et retrouver les objets déjà créées à partir des notices biographiques de l'exercice précédent
Au moment d'ouvrir le formulaire, Base vous demandera votre mot de passe utilisé lors de l'installation de PostgreSQL
On peut parcourir les objets un par un, ou ouvrir la liste de tous les objets que contient la table –en utilisant le bouton en bas à droite
– puis appliquer de filtres, trier, etc. C'est très pratique car l'objet sélectionné dans la liste est celui qu'on voit sur la fiche
ATTENTION: ne pas toucher au contenu des tables du schéma paramètre car elles permettent à votre base de données de fonctionner correctement et vous risquez de compromettre l'affichage de vos données (mais pas les données elles mêmes car elles sont stockées à part)
Installer l'interface de sa base personnelle
Il s'agit maintenant de créer une interface pour la base de données personnelle que vous avez créé plus haut dans PostgreSQL: bd_personnelle
Pour ce faire :
Accéder au menu Fichier, enregistrer sous…
renommez la copie que vous allez créer, l'appelant par ex. bd_personnelle – vous pouvez également la mettre dans un autre dossier, par ex. le dossier principal de votre travail de Master
Validez et vous vous trouverez désormais dans le nouveau fichier de Base qui (pour mémoire) vous sert de client pour accéder au serveur PostgreSQL
Il faudra maintenant changer les paramètres de connexion pour changer de base PostgreSQL interfacée
allez dans le menu Edition > Base de données > Propriétés
remplaces le nom de la base de données : 'dbname=bd_td_exercice' devient 'dbname=bd_personnelle'
vous changez ainsi la base de données du serveur PostgreSQL qui devient visible grâce au client Base
Testez la connexion avec le bouton de la même interface, mettant votre mot de passe.
Si vous vous êtes trompés de mot de passe, il faut fermer et réouvrir le fichier
ouvrez le formulaire 'objets': maintenant il sera vide car les tables du schéma 'objets' de votre base personnelle sont vides – à vous de les remplir
pour créer un nouvel objet, uitliser le formulaire 'objets_creation'
car le formulaire 'objets' sert uniquement à visualiser et modifier des objets existants
Si vous avez tout effectué correctement jusqu'ici vous disposez désormais d'une base de données à vous, vous permettant de créer des objets et de les associer entre eux. Par exemple, de créer un acteur et de l'associer à la bibliographie qui le concerne.
Sauvegarde de votre base personnelle !!!
IMPORTANT: il faut effectuer des sauvegardes régulières de votre base de données personnelle en exportant en format SQL le contenu du schéma 'objets'. Vous pourrez ainsi recréer uen copie identique de votre base dans n'importe quel serveur PostgreSQL, par ex. sur un autre ordinateur.
Ouvrir le client PGAdminIII et vous connecter à la base de données 'bd_personnelle'
Déplier les schémas dans l'arboréscence à gauche
sélectionner le schéma Objets, faire un click droit et sélectionner la commande sauvegarder
créer un dossier de sauvegarde de vos données dans le dossier du TD ou de votre Master
atteindre ce dossier par le bouton '…' de la sauvegarde de PGAdminIII
comme nom du ficher de sauvegarde taper 'schema_objets_20141004.sql' Vous saurez ainsi directement à quelle date vous avez effectué la dernière sauvegarde. Vérifiez que le suffixe est bien .sql.
Ensuite paramétrer dans le même onglet:
Onglet 'Options 1': cocher 'Ne pas sauvegarder: Propriétaire, Droits'; le reste décoché
Onglet 'Options 2' : cocher 'Requêtes : Utiliser les colonnes pour les Insert, Utiliser les commandes pour les insert' Le reste décoché, sauf laisser 'Messages en mode verbeux'
Puis appuyer sur Sauvegarder.
Si tout va bien, la liste des messages termine par 'Le process a retourné le code de sortie 0.' (si c'est '1' il y a un problème, '0' c'est OK)
Vérifier que vous trouvez le nouveau document dans le dossier des sauvegardes.
Ce n'est pas nécessaire de sauvegarder les autres schémas car normalement vous ne les touchez pas. Ils sont donc identiques aux fichiers que je vous ai envoyés et vous pouvez mettre une simple copie de ceux-ci dans votre dossier de sauvegarde.
Le fichier de sauvegare vous permettra de recréer une copie exacte de votre schéma 'objets' de données sur un autre serveur (exactement comme on a fait lors de l'installation de la base de données pour le fichier exercice que je vous ai fourni). Donc si votre ordinateur a une défaillance, ou qu'on vous le vole, et si vous avez une copie de ces fichiers sur un disque dur à la maison, vous pourrez recréer votre base sur un nouvel ordinateur. Exactement comme on fait avec un document de traitement de texte.
Le fichier de sortie .sql est un fichier texte, facilement stockable sur une clé USB et très facile à mettre sur n'importe quelle autre plateforme, garantissant ainsi la pérennité de vos données.
Plus tard, vous pourrez aussi m'envoyer ces fichiers et je pourrai voir vos données, vous donner des indications et précisions et vous paramétrer des requêtes d'exploitation, pour vous apprendre à exploiter vos données
Mise à jour de la base de données et de l'interface
Base de données 'bd_td_exercice'
Télécharger la version à jour de la base de données de l'exercice. La version à jour est datée du 21 novembre 2014.
Dézipper le dossier et le placer dans votre endroit préféré pour ce TD.
Installer la base de données PostgreSQL
Procéder à l'installation de la dernière version de la base de données de l'exercice:
Ouvrir pgAdminIII
Ouvrir le serveur PostgreSQL 9.3
Ouvrir le dossier des bases de données
Activer la base de données 'bd_td_exercice'
Click droit sur la base de donnée et sélectionner 'Supprimer' dans le menu
Répondre 'Oui' à la question 'Êtes vous sur de vouloir la supprimer'
Créer une nouvelle base de données vide appelée 'bd_td_exercice' et ouvrir la boite de dialogue SQL (la loupe)
Ouvrir le dossier téléchargé (dézippé préalablement) et dans ce dossier ouvrir le fichier 'bd_td_exercice.sql'
Patienter un petit moment car l'ouverture de ce document, qui contient la sauvegarde de toute la base de données, prend un petit moment
Exécuter ce script SQL : bouton vert = exécuter la requête
Patienter quelques secondes pendant l'installation de la base de données
Si vous avez un message terminant par la ligne “La requête a été exécutée avec succès en 21247 ms, mais ne renvoie aucun résultat.” c'est OK, sinon refaites l'opération en suivant encore plus attentivement les instructions.
Mise-à-jour de l'interface
Dans le dossier téléchargé et dézippé se trouve la dernière version de l'interface, c'est-à-dire le fichier 'td_histoire_numerique.odb'. Ecraser l'ancien fichier et le remplacer par celui-ci. Vérifier les paramètres de connexion selon ce qui est indique ici: nom de la base: bd_td_exercice, port 5432.
Ouvrez le fichier, connectez-vous à la base de donnée et explorez les nouvelles données dans les différentes interfaces (sans rien modifier dans les données)
Base de données 'td_personnelle'
Ouvrir votre base de données personnelle (bd_personnelle) avec pgAdminIII
Déplier dans l'arboréscence de gauche les schémas (rouge)
NE TOUCHEZ JAMAIS au schéma 'objets', sauf si:
sélectionner le schéma vues_affichage, puis click droit: supprimer en cascade
sélectionner le schéma paramètre, puis click droit: supprimer en cascade
recrééz les schémas paramètre et vues_affichage selon les instructions
données ci-dessus et SANS TOUCHER au schéma 'objets'
Version de la base de données antérieure au premier novembre 2014
Mise-à-jour de l'interface
prenez le fichier bd_personnelle.odb qui contient l'interface de votre base de données qui se trouve dans le dossier téléchargé et mettez le à la place de votre fichier actuel
si les paramètres de votre base de données sont corrects (nom de la base: bd_personnelle, port 5432) vous aurez accès à votre nouvelle interface et aux nouveaux paramètres – ainsi à vos données que vous n'avez pas touchées.
si ce n'est pas le cas, vérifiez le paramètrage selon les indications données
ci-dessus