14
CHAPITRE 1. INTRODUCTION AUX BASES DE DONNÉES {S1}
1.3 Travaux Dirigés – Sensibilisation à la problématique des bases
de données
1.3.1
Introduction
Objectifs
L’objectif de ce TD est de se faire une idée de l’intérêt de toute la théorie sur la conception des bases
de données et de l’intérêt de l’utilisation des systèmes de gestion de base de données. En d’autres termes,
nous allons essayer d’apporter des éléments de réponse à la question :
« Pourquoi dois-je m’embêter avec toute cette théorie et ces connaissances à assimiler alors que je
sais très bien manipuler un fichier, y stocker des informations et les y retrouver avec mon langage de
programmation favoris ? »
Contexte
Supposons que vous ayez à développer une application de gestion d’une bibliothèque. Tous les
livres de la bibliothèque possèdent un numéro de livre, un titre, un ou plusieurs auteurs et un éditeur.
Lorsqu’une personne emprunte un livre, il faut mémoriser son nom, son prénom, son numéro de
téléphone, son adresse, la date de l’emprunt et la date de retour une fois ce dernier réalisé. Toutes les
informations doivent être conservées pour garder un historique des emprunts.
1.3.2 Approche naïve
Une solution simple et naïve . . .
Certains d’entre vous ont une expérience des bases de données (il s’agit vraiment de quelque chose
d’incontournable aujourd’hui) ou une expérience importante en développement logiciel. Dans le cadre
de cet exercice, oubliez toutes vos connaissances et vos réflexions sur le sujet.
1. Votre applicationvadevoir stocker toutes les informationsmentionnéesdans l’introduction (section
Contexte), et de manière persistante, donc en utilisant un fichier. Quelle est la solution de stockage
des données la plus naïve et la plus naturelle venant immédiatement à l’esprit ?
. . . mais pas sans conséquences
Supposons que nous adoptions la solution naïve et naturelle suivante :
– Nous créons un fichier texte comportant à l’origine une ligne par livre.
– Dans chaque ligne, on trouve les informations titre, auteur, éditeur, numéro du livre sép