⌂ Bases de données
Fiche 1 sur 12

À quoi sert une base de données ?

Le problème que ça résout, et le vocabulaire de départ.

Après cette fiche, vous saurez :

1Le problème

La bibliothèque communale de Binche prête des livres. Pendant des années, elle a tout noté dans un grand tableau, une ligne par emprunt.

LecteurAdresseTéléphoneLivre empruntéAuteurDate
Dupuis Camillerue de la Station 120470 12 34 56Le Petit PrinceSaint-Exupéry12/09/2026
Dupuis Camillerue de la Station 120470 12 34 56GerminalZola12/09/2026
Martin Sofiarue Haute 50498 11 22 33GerminalZola15/09/2026
Dupuis Camillerue de la Statoin 120470 12 34 56L'AssommoirZola20/09/2026

Regardez ce tableau attentivement. Il pose quatre problèmes graves.

1. Tout est répété

L'adresse et le téléphone de Camille sont écrits trois fois. Le nom de Zola aussi. Plus la bibliothèque prête, plus le tableau se remplit de doublons.

2. Les erreurs se glissent partout

Ligne 4 : « rue de la Statoin ». Une faute de frappe. Camille a maintenant deux adresses différentes dans le tableau, et on ne sait plus laquelle est la bonne.

3. Modifier devient un cauchemar

Camille déménage. Il faut retrouver toutes ses lignes et les corriger une par une. Si on en oublie une, la base ment.

4. Supprimer fait perdre autre chose

On efface le dernier emprunt de Sofia. On perd du même coup son adresse et son téléphone, alors qu'elle est toujours inscrite.

À retenir

Ces quatre problèmes ont un seul et même remède : ne jamais écrire la même information deux fois.

C'est toute l'idée d'une base de données. Chaque information est écrite à un seul endroit, et on va la chercher quand on en a besoin.

2La solution : plusieurs tables

Au lieu d'un grand tableau, on en fait plusieurs, chacun sur un seul sujet.

Une table pour les lecteurs — chaque lecteur écrit une seule fois :

num_lecteurnomprenomadressetelephone
1DupuisCamillerue de la Station 120470 12 34 56
2MartinSofiarue Haute 50498 11 22 33

Une table pour les livres :

num_livretitrenum_auteur
1Le Petit Prince1
2Germinal2
3L'Assommoir2

Une table pour les emprunts, qui relie les deux :

num_empruntnum_lecteurnum_livredate_emprunt
11112/09/2026
21212/09/2026
32215/09/2026
41320/09/2026

Camille déménage ? Une seule ligne à corriger, dans la table des lecteurs. Les quatre emprunts suivent automatiquement, parce qu'ils ne contiennent que le numéro 1.

À retenir

Les tables sont reliées par des numéros.

L'emprunt n°2 ne contient pas « Dupuis Camille » : il contient 1. Et le 1 renvoie à la ligne 1 de la table des lecteurs.

C'est pour cela qu'on parle de base de données relationnelle : les tables sont en relation les unes avec les autres.

3Le vocabulaire

Cinq mots à connaître. Vous les entendrez à chaque séance.

MotCe que c'estDans notre exemple
TableUn tableau qui porte sur un seul sujetla table des lecteurs
ColonneUne caractéristique. On dit aussi champnom, telephone
LigneUn élément. On dit aussi enregistrementun lecteur précis
Base de donnéesL'ensemble des tablesla base de la bibliothèque
SGBDLe logiciel qui gère tout çaPostgreSQL

À retenir

SGBD veut dire Système de Gestion de Base de Données.

C'est un logiciel. Il stocke les données, il les protège, et il répond à vos questions. Vous ne touchez jamais aux fichiers directement : vous parlez au SGBD.

Exemples : PostgreSQL (le nôtre), MySQL, Oracle, SQL Server, Microsoft Access.

Et SQL ?

SQL est la langue dans laquelle on parle au SGBD. Ces trois lettres se prononcent « esse-cu-elle », ou « sequel » en anglais.

SELECT nom, prenom FROM lecteurs;

Cette ligne veut dire : donne-moi le nom et le prénom de tous les lecteurs. Vous saurez l'écrire dans quelques séances.

À retenir

Bonne nouvelle : SQL est presque le même partout.

Ce que vous apprenez ici sur PostgreSQL fonctionnera à 90 % sur MySQL, Oracle ou SQL Server. Comme pour les langages de programmation : les idées se transposent, seuls quelques détails changent.

4Base de données et programmation

Si vous suivez aussi le cours de programmation, vous avez appris à ranger des valeurs dans des variables.

Le problème des variables, c'est qu'elles vivent en mémoire vive. Quand le programme se ferme, tout est perdu.

VariableBase de données
Où ?Dans la mémoire viveSur le disque dur
Combien de temps ?Le temps du programmeDes années
Combien de données ?Quelques dizainesDes millions de lignes
Partagé ?NonOui, entre plusieurs utilisateurs

Les deux vont ensemble : le programme calcule, la base de données retient. Une application de bibliothèque, c'est un programme plus une base de données.

→Exercices

Pas d'ordinateur pour cette fiche. Prenez une feuille.

1Repérer les problèmesRecopier

Voici le carnet d'un club de sport, tenu dans un seul tableau.

MembreTéléphoneCours suiviNom du profJour
Lambert Julie0470 11 11 11YogaMoreauLundi
Lambert Julie0470 11 11 11NatationDuboisJeudi
Benali Karim0475 22 22 22YogaMoreauLundi
Lambert Julie0470 11 11 12DanseMoreauMardi
  1. Quelles informations sont écrites plusieurs fois ?
  2. Trouvez l'erreur qui s'est glissée dans le tableau.
  3. Que se passe-t-il si le professeur Moreau change de nom de famille ?

Solution

1. Les répétitions.

  • « Lambert Julie » et son téléphone : trois fois.
  • « Yoga », « Moreau » et « Lundi » : deux fois.

2. L'erreur. À la dernière ligne, le téléphone de Julie se termine par 12 au lieu de 11. Julie a maintenant deux numéros dans le carnet, et personne ne sait lequel est le bon.

C'est le danger de la répétition : plus une information est recopiée, plus elle a de chances d'être fausse quelque part.

3. Le changement de nom. Il faut retrouver les trois lignes où « Moreau » apparaît et les corriger toutes. Si on en oublie une, le club a deux professeurs différents alors qu'il n'y en a qu'un.

2Découper en tablesModifier

Reprenez le carnet du club de sport.

  1. Sur quels sujets différents porte ce tableau ? Il y en a trois.
  2. Dessinez les trois tables, avec leurs colonnes.
  3. Ajoutez un numéro à chaque ligne pour pouvoir les relier.

Solution

Trois sujets : les membres, les cours, et les inscriptions.

Table membres

num_membrenomprenomtelephone
1LambertJulie0470 11 11 11
2BenaliKarim0475 22 22 22

Table cours

num_courslibelleprofjour
1YogaMoreauLundi
2NatationDuboisJeudi
3DanseMoreauMardi

Table inscriptions

num_inscriptionnum_membrenum_cours
111
212
321
413

Le téléphone de Julie n'est plus écrit qu'une fois. Le professeur Moreau non plus.

Si vous avez trouvé quatre tables en séparant aussi les professeurs, c'est encore mieux. Nous verrons à la fiche 3 comment décider jusqu'où découper.

3Votre propre situationCréer

Choisissez une situation que vous connaissez : un cabinet médical, un garage, une école de devoirs, une salle de concert.

  1. Écrivez en une phrase ce que fait cette organisation.
  2. Listez les sujets dont elle a besoin de garder trace.
  3. Pour chaque sujet, listez les informations à retenir.

Solution

Il n'y a pas une seule bonne réponse. Voici un exemple avec un cabinet médical.

Ce que fait l'organisation : des médecins reçoivent des patients en consultation, sur rendez-vous.

Les sujets :

  • Patients : nom, prénom, date de naissance, adresse, téléphone, numéro national
  • Médecins : nom, prénom, spécialité, numéro INAMI
  • Consultations : date, heure, motif, montant

Ce qui compte dans cet exercice n'est pas d'avoir la liste parfaite. C'est d'avoir séparé les sujets, et de voir que la consultation relie un patient à un médecin.

Gardez votre feuille : nous la reprendrons à la fiche suivante.

Je sais faire

Une case qui coince ? Relisez la partie concernée avant de passer à la fiche suivante.

Fiche 2 : Analyser : entités et attributs →