Les notions d’entité et de table sont les concepts fondamentaux dans de le contexte des bases de données que nous allons étudier, dites relationnelles.

1. Entité

Une entité est un modèle de données. Il s’agit donc d’une représentation de la réalité.

Prenons un exemple. On désire gérer les données à propos des employés. Avant de stocker les données des employés il faut d’abord déterminer quelles données vont être stockées. Il faut ainsi d’abord concevoir un modèle de données. L’entreprise A a besoin de stocker les données illustrées à la Figure 2.1 alors que l’entreprise B a des besoins plus simples tel que la Figure 2.2 le montre. En réalité, il y a une infinité de modélisations différentes.

Employee data model (A)

Figure 2.1 : modélisation A

Employee data model (B)

Figure 2.2 : modélisation B


 
 
 
 
 
 
 
 
 

2. Table

Une fois que l’étape de modélisation a été réalisée, il faut créer (implémenter) la base de données. Les entités se concrétisent par des tables. Ci-dessous est illustrée la table correspondant à l’entité Employee de la Figure 2.1. Une ligne dans une table (sauf l’entête) porte le nom d’enregistrement ou entrée.

SELECT *
FROM Employee
{{h}}
{{r}}

Certains enregistrements de la table ci-dessus ont une valeur NULL concernant l’attribut End (date de départ). En SQL, cela signifie que la valeur est inconnue pour le moment ou inexistante. Dans le cas présent, certains employés travaillent toujours pour l’entreprise, donc aucune date de départ n’est enregistrée pour ceux-ci.

L’attribut ID (identifiant) est particulier. Il s’agit de la clé primaire de la table. Son rôle est de permettre la distinction des enregistrements dans la table. L’attribut Department_id est aussi particulier. Il s’agit d’une clé étrangère. Celle-ci fait le lien avec une autre table. Ici, elle fait référence au département dans lequel travaille l’employé.

3. Schéma de base de données

Un schéma de base de données représente toutes les tables d’une base de données et les relations entre-elles. Le schéma de base de données introduit dans le chapitre précédent, reproduit à la Figure 2.3, comprend quatre tables, à savoir Employee, Department, Project et Involvement. Elles ont toutes leurs propres attributs (First_name, Last_name, …). Les clés primaires sont soulignées. Une association entre deux tables est représentée par une flèche.

Database schema

Figure 2.3 : schéma de base de données

Récap

source www.platinumtraining.org

Figure 2.4 : Conception (source platinumtraining.org)

Construction (source www.haskell.com)

Figure 2.5 : Implémentation (source haskell.com)

Dans le développement d’une base de données deux phases différentes doivent être distinguées.

Lors de la première phase, appelée conception, on modélise, en fonction des besoins, les entités et leurs attributs ainsi que les relations entre entités. Cette phase, illustrée à la Figure 2.4, sort du cadre du présent cours.

La seconde phase concerne les données à proprement parler. On appelle cette phase implémentation. Les entités modélisées lors de la première phase se matérialisent par des tables. Les lignes dans les tables portent le nom d’enregistrement et ont un identifiant unique pour les distinguer entre-elles (clé primaire). Le présent cours porte sur cette seconde phase (illustrée à la Figure 2.5).