Page 42 - DCG - Les processus - 2025
P. 42
NOTION DE TABLE ET D'INTÉGRITÉ
RÉFÉRENTIELLE
✅ Qu’est-ce qu’une table ?
En base de données relationnelle, une table correspond à une relation. Le terme de table est utilisé au
niveau physique, alors que le terme relation est utilisé au niveau logique.
Elle représente un ensemble de faits ou d’objets de même nature (clients, produits, commandes…).
Caractéristiques :
• Une table porte un nom unique.
• Elle contient des attributs (ou champs), qui correspondent aux colonnes visibles dans une base.
• Chaque ligne de la table est appelée enregistrement ou tuple.
• Les tables sont gérées par un Système de Gestion de Base de Données Relationnelle (SGBDR) tel
que Access, Oracle, MySQL, SQL Server...
Remarque : dans la phase de modélisation, une table est construite à partir d’une relation normalisée du
modèle relationnel.
La contrainte d’intégrité référentielle
Une contrainte d’intégrité référentielle permet de garantir la cohérence des données entre plusieurs tables
liées par des clés étrangères.
Elle interdit la présence d’une valeur de clé étrangère qui ne correspondrait à aucune clé primaire existante.
Cela évite qu’une commande soit liée à un client inexistant, ou qu’un produit fasse référence à une famille
qui n’est pas enregistrée.
Cette règle est automatique dans la plupart des SGBD, mais elle doit être définie lors de la création de la
base ou lors de l’écriture du modèle physique.
✏️ Exemple
Considérons la table suivante :
CLIENT (NoCli, NomCli, PrenCli)
COMMANDE (NoCmd, DateCmd, #NoCli)
• NoCli est la clé primaire (identifiant du client).
• Cette table est liée à COMMANDE, via une clé étrangère #NoCli.
• Si un enregistrement est ajouté dans COMMANDE, la valeur de #NoCli doit obligatoirement exister
dans CLIENT, sinon l’opération sera rejetée.
• Si un client est supprimé, l’opération sera rejetée si ce client a passé des commandes. En effet, si
l’opération était validée, il resterait, dans la table COMMANDE, des enregistrements avec des
numéros de clients qui n’existent plus.
37