Principes de base

Qu'est-ce qu'une base de données ?

Une base de données est un ensemble structuré d'informations. Dans le langage courant, le terme peut désigner toute source importante de données telle qu'une encyclopédie. Dans le langage informatique, il s'agit d'un ensemble d'informations regroupées sous la forme de données stockées sur un système de fichiers structurés et organisés de manière à pouvoir être facilement manipulées.

Ces données doivent pouvoir être utilisées par des programmes et par des utilisateurs différents pour une consultation, une saisie ou bien une mise à jour, tout en s'assurant des droits accordés à ces derniers. Cela est d'autant plus utile que les données informatiques sont de plus en plus nombreuses, comme en témoignent les exemples d'utilisation ci-dessous:

Exemples d'utilisation de base de données

A titre d'exemple, imaginons un opérateur téléphonique qui veut créer une base de données permettant de gérer ses clients. Sachant que les clients peuvent obtenir plusieurs numéros de téléphone auprès de cet opérateur, ce dernier décide d'enregistrer les informations nécessaires pour établir une facture mensuelle détaillée de chacun de ces numéros de téléphone. A ce dessein, il enregistre les informations propres au client détenteur du numéro pour lequel est réalisée la facture: son nom, son prénom et son adresse. Pour chaque appel, l'opérateur stocke également le numéro de téléphone utilisé par le client (qui, rappelons-le, peut en avoir plusieurs), le numéro appelé, la date, l'heure et la durée de l'appel ainsi que le tarif appliqué afin de pouvoir établir une facture détaillée.

Une première approche pour implémenter cette base de données consisterait à utiliser un tableur. En effet, une base de données peut se voir comme un simple tableau: les colonnes représentent les champs (nom, prénom, numéro de téléphone,...) et les lignes chacun des enregistrements (ici les appels) stockés par l'opérateur téléphonique:

Représentation d'une base de données à l'aide d'un tableur

L'avantage de cette manière de faire tient dans sa simplicité: tout ce qui concerne un appel tient sur une ligne et tous les appels sont répertoriés dans une même table. Cette approche présente néanmoins quelques inconvénients:

Afin d'éviter les inconvénients répertoriés ci-dessus, il est possible de recourir à une base de données relationnelle, c'est-à-dire à un ensemble de tables reliées entre elles. Une première table pourrait contenir les coordonnées des clients, une deuxième les numéros de téléphones des clients et une dernière pourrait stocker la liste des appels:

Table des clients

Table des numéros

Table des appels

La table des numéros permet de faire la liaison entre un abonné et son ou ses numéros de téléphone. Elle est indispensable du fait qu'un client peut avoir plusieurs numéros de téléphone différents. Si cela n'avait pas été le cas, il aurait suffi d'ajouter un champ numéro à la table des clients. Ce champ aurait alors pu être utilisé comme identifiant et remplacer le champ Id_Client.

Cette manière de faire est moins lisible au premier coup d'oeil: il faut par exemple consulter deux tables pour connaître le propriétaire d'un numéro de téléphone. Néanmoins, cet inconvénient est vite balayé par plusieurs avantages:

A vous de jouer !

La base de données ci-dessous répertorie des informations relatives à des comptes bancaires qui appartiennent à des clients et qui sont gérés par différentes filiales d'une même banque. Après avoir étudié les liens qu'entretiennent les différentes tables de la base de données, répondez aux questions suivantes:

  1. Quel est le rôle de la table POSSESSION ?
  2. Quels sont les numéros de compte d'Arthur Honegger ?
  3. Dans quel canton Riemann a-t-il ouvert ses comptes ?
  4. Quel est le montant de la fortune d'Euler dans cette banque ?
  5. Quel est le client qui a accédé en dernier à son compte ?
  6. Dans quelle ville la banque gère-t-elle le plus d'argent ?
  7. Quel compte est partagé par plusieurs clients ?

|