À 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 :
- expliquer pourquoi un tableur ne suffit pas
- employer les mots table, ligne, colonne, SGBD
- reconnaître ce qu'est une base de données relationnelle
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.
| Lecteur | Adresse | Téléphone | Livre emprunté | Auteur | Date |
|---|---|---|---|---|---|
| Dupuis Camille | rue de la Station 12 | 0470 12 34 56 | Le Petit Prince | Saint-Exupéry | 12/09/2026 |
| Dupuis Camille | rue de la Station 12 | 0470 12 34 56 | Germinal | Zola | 12/09/2026 |
| Martin Sofia | rue Haute 5 | 0498 11 22 33 | Germinal | Zola | 15/09/2026 |
| Dupuis Camille | rue de la Statoin 12 | 0470 12 34 56 | L'Assommoir | Zola | 20/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_lecteur | nom | prenom | adresse | telephone |
|---|---|---|---|---|
| 1 | Dupuis | Camille | rue de la Station 12 | 0470 12 34 56 |
| 2 | Martin | Sofia | rue Haute 5 | 0498 11 22 33 |
Une table pour les livres :
| num_livre | titre | num_auteur |
|---|---|---|
| 1 | Le Petit Prince | 1 |
| 2 | Germinal | 2 |
| 3 | L'Assommoir | 2 |
Une table pour les emprunts, qui relie les deux :
| num_emprunt | num_lecteur | num_livre | date_emprunt |
|---|---|---|---|
| 1 | 1 | 1 | 12/09/2026 |
| 2 | 1 | 2 | 12/09/2026 |
| 3 | 2 | 2 | 15/09/2026 |
| 4 | 1 | 3 | 20/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.
| Mot | Ce que c'est | Dans notre exemple |
|---|---|---|
| Table | Un tableau qui porte sur un seul sujet | la table des lecteurs |
| Colonne | Une caractéristique. On dit aussi champ | nom, telephone |
| Ligne | Un élément. On dit aussi enregistrement | un lecteur précis |
| Base de données | L'ensemble des tables | la base de la bibliothèque |
| SGBD | Le logiciel qui gère tout ça | PostgreSQL |
À 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.
| Variable | Base de données | |
|---|---|---|
| Où ? | Dans la mémoire vive | Sur le disque dur |
| Combien de temps ? | Le temps du programme | Des années |
| Combien de données ? | Quelques dizaines | Des millions de lignes |
| Partagé ? | Non | Oui, 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.
Voici le carnet d'un club de sport, tenu dans un seul tableau.
| Membre | Téléphone | Cours suivi | Nom du prof | Jour |
|---|---|---|---|---|
| Lambert Julie | 0470 11 11 11 | Yoga | Moreau | Lundi |
| Lambert Julie | 0470 11 11 11 | Natation | Dubois | Jeudi |
| Benali Karim | 0475 22 22 22 | Yoga | Moreau | Lundi |
| Lambert Julie | 0470 11 11 12 | Danse | Moreau | Mardi |
- Quelles informations sont écrites plusieurs fois ?
- Trouvez l'erreur qui s'est glissée dans le tableau.
- 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.
Reprenez le carnet du club de sport.
- Sur quels sujets différents porte ce tableau ? Il y en a trois.
- Dessinez les trois tables, avec leurs colonnes.
- Ajoutez un numéro à chaque ligne pour pouvoir les relier.
Solution
Trois sujets : les membres, les cours, et les inscriptions.
Table membres
| num_membre | nom | prenom | telephone |
|---|---|---|---|
| 1 | Lambert | Julie | 0470 11 11 11 |
| 2 | Benali | Karim | 0475 22 22 22 |
Table cours
| num_cours | libelle | prof | jour |
|---|---|---|---|
| 1 | Yoga | Moreau | Lundi |
| 2 | Natation | Dubois | Jeudi |
| 3 | Danse | Moreau | Mardi |
Table inscriptions
| num_inscription | num_membre | num_cours |
|---|---|---|
| 1 | 1 | 1 |
| 2 | 1 | 2 |
| 3 | 2 | 1 |
| 4 | 1 | 3 |
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.
Choisissez une situation que vous connaissez : un cabinet médical, un garage, une école de devoirs, une salle de concert.
- Écrivez en une phrase ce que fait cette organisation.
- Listez les sujets dont elle a besoin de garder trace.
- 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
- Je sais expliquer à quoi sert une base de données.
- Je connais les mots table, ligne, colonne, enregistrement.
- Je sais ce qu'est un SGBD et ce qu'est SQL.
- Je sais pourquoi on répartit les données sur plusieurs tables.
Une case qui coince ? Relisez la partie concernée avant de passer à la fiche suivante.