Modèle relationnel

Etape 2: Les ensembles de liens

Chaque ensemble de liens peut être traduit en une table distincte. Elle doit alors contenir les clés primaires des ensembles d'entités participantes comme clés étrangères. La clé primaire de la table ainsi obtenue est alors généralement la concaténation des clés étrangères. Les autres attributs de l'ensemble de liens complètent les colonnes de la table.

Une clé étrangère dans une table est un attribut qui sert de clé primaire dans une autre table et permet d'établir les liens désirés entre les tables en question.

rel1.jpg

Schéma des liens de la base de donnée Entreprise

rel10.jpg

Transformation des liens en autant de tables

Dans l'exemple ci-dessus, nous avons créé une table pour chacun des ensembles de liens CHEF DE DEPARTEMENT, AFFECTATION et APPARTENANCE. Dans les tables CHEF DE DEPARTEMENT et AFFECTATION, les clés étrangères sont respectivement le numéro du département et le numéro de l'employé. La table APPARTENANCE utilise quant à elle les clés d'identification des tables EMPLOYE et PROJET comme clés étrangères et contient un attribut appelé Taux participation.

Etant donné que chaque département est dirigé par un seul chef, le numéro de département departementID suffit pour former la clé primaire de la table CHEF DE DEPARTEMENT. De même, le numéro d'employé employeID suffit pour définir la clé d'identification de la table AFFECTATION, car chaque employé est affecté à un seul département. Néanmoins, la clé d'identification de la table APPARTENANCE doit être formée par la concaténation de deux clés étrangères: le numéro d'employé et le numéro de projet. En effet, un employé peut participer à plusieurs projets et, inversement, un projet peut impliquer plusieurs employés.

La transformation en table distincte de chaque ensemble de liens ne conduit pas toujours à un schéma de base de données relationnelle optimal. En effet, selon les circonstances, elle pourrait engendrer un grand nombre de tables. En se référant à l'exemple ci-dessus, nous pourrions nous demander s'il est judicieux de créer une nouvelle table pour représenter la fonction de chef de département. En effet, cette fonction pourrait être intégrée dans la table DEPARTEMENT tout simplement comme attribut supplémentaire dont la valeur correspondrait au numéro d'employé du chef pour chaque département.

Dès lors, le passage d'un ensemble de liens du modèle entité-association aux tables du modèle relationnel se fait en fonction du degré de l'ensemble de liens considéré:

Les règles de transformation de liens permettent donc d'aboutir au schéma logique suivant:

rel1.jpg

Schéma entité-association

rel2.jpg

Schéma relationnel correspondant

A vous de jouer !

En vous basant sur le schéma entités-associations ci-dessous représentant la structure des données nécessaires à la gestion d'une librairie en ligne, créez le schéma logique de la base de données relationnelle associée:

rel15.jpg

En plus de leurs clés d'identification, les entités du schéma relationnel seront caractérisées par les attributs suivants:

Entité

Attributs

Entité

Attributs

Livre

  • Titre
  • Auteur
  • Catégorie
  • ISBN
  • Prix
  • Quantité

Editeur

  • Nom
  • Adresse
  • Ville
  • Pays
  • Email
  • URL

Fournisseur

  • Nom
  • Adresse
  • Ville
  • Email
  • Téléphone

Commande

  • Date

Client

  • Nom
  • Genre
  • Adresse
  • Ville
  • Pays
  • Email
  • Total des achats

Employé

  • Nom
  • Genre
  • Adresse
  • Ville
  • Pays
  • Email
  • Role

|