1- Introduction
2- Le modèle Entité/Association
3- Le modèle relationnel
5- L’algèbre relationnel
6- SQL
2
Plan du cours
1- Introduction
2- Le modèle Entité/Association
3- Le modèle relationnel
5- L’algèbre relationnel
6- SQL
3
Pour construire une base de données, il faut
1. Construire un schéma conceptuel, modélisé sous forme d’entités et d’associations
2. Transformer le schéma E/A en schéma relationnel
3. Mettre en œuvre via un SGBD
Interview Modélisation
Documents Entité association
Transformation
en relationnel
Schéma logique
en relationnel
4
le processus de modélisation des données passe par deux
phases :
5
• Un schéma conceptuel représente :
– Les faits et les évènements qui décrivent le monde à
modéliser. Exemple : une compagnie aérienne, ses avions
et ses pilotes.
– Certaines contraintes. Exemple : un pilote ne doit exercer
que s’il détient une licence en cours de validité et une
qualification correspondant au type d’avion.
6
7
1. Définition : C’est un Formalisme graphique pour la
modélisation de données
8
Le modèle Entité-Association est un modèle de données de
type conceptuel basé sur 3 éléments essentiels :
a) L’entité
b) L’association
c) La propriété
9
C’est un concept :
- pourvu d'une existence propre
- conforme aux besoins de gestion de l'entreprise
Formalisme
10
4 entités : FILMS, CINEMA, ACTEURS, REALISATEURS
11
C’est un lien sémantique entre deux ou plusieurs entités.
Le lien n'est pas orienté : les commandes comportent des produits veut dire
également que les produits peuvent être commandés.
Synonyme : RELATION
Formalisme graphique
12
Dimension : La dimension d’une association est le nombre
d’entités participant à l’association.
Exemple : L’association Ecrit_Par est de dimension deux (binaire)
13
Type de liaison inter-entités
Liaison de type 1 à 1 : A toute occurrence de X correspond une et
une seule occurrence de Y et réciproquement.
14
La notion de cardinalité minimum/maximum est liée aux types de
liaison inter-entités. Les cardinalités consistent en deux nombres, min
et max tel que :
15
Les valeurs de cardinalités sont en général 0, 1 ou n:
16
L’expression de la cardinalité est obligatoire pour chaque
association.
Il ne peut y avoir de cardinalité maximale égale à 0, car elle
rendrait l’association inutile.
Une cardinalité minimale est toujours 0 ou 1 et une
cardinalité maximale est toujours 1 ou n.
Si une cardinalité est connue et vaut 2 ou plus, alors nous
considérons qu’elle est indéterminée et vaut n.
Les seules cardinalités admises sont :
– 0,1
– 0,n
– 1,1
– 1,n
17
18
La propriété est définie comme étant une donnée élémentaire :
– ayant un sens,
– pouvant être utilisée de manière autonome.
– Sert à décrire les entités et les associations.
Exemples : NomEtudiant, TitreCours, NbEnfants
Synonyme : ATTRIBUT
Une propriété peut être:
- atomiques. Ex: Prénom, nom, ...
- composés. Ex: Date de Naissance (Jour/Mois/Année)
19
20
Les propriétés prennent des valeurs appelées
occurrences de la propriété.
Propriété Occurrences
NomEtudiant Dupont, Martin
AnnéeSouscription 1988, 1989
21
Exemple d’entité avec ses valeurs d’attribut:
22
• Objectif : chaque occurrence doit pouvoir être repérée de manière
unique et sans ambiguïté, pour être distinguée de toutes les autres
23
1. Une propriété ne peut pas figurer sur deux objets différents
24
Il peut exister plusieurs associations entre les mêmes entités.
Une association peut être réflexive, c’est-à-dire qu’elle relie une entité à elle-même.
25
Concevoir un schéma EA pour une base de données de gestion d’un
hypermarché. Dans ce diagramme, sont représentés 4 entités:
- Employé, d'attributs nom et salaire;
- Rayon, d'attributs nomR et étage;
- Article, d'attributs nomA et type;
- Fournisseur, d'attributs nomF et adresse.
26
27
On introduit des spécialisations dans une entité
lorsque :
29
Exemple : La gestion d’un contrat d’assurance du point de vue
de son souscripteur, de ses assurés et de ses
intervenants (courtiers, agents).
30
A partir de l’entité PersPhysique, on a envie de distinguer (dans deux entités
spécialisées) deux sous-populations : les souscripteurs de contrat et les assurés.
L’héritage est non exclusif: certaines personnes peuvent être à la fois souscripteurs et
assurés.
32
Le modèle Entité/Association est simple et pratique.
1. Il n’y a que 3 concepts : entités, associations et attributs.
2. Il est approprié à une représentation graphique intuitive,
même s’il existe beaucoup de conventions.
3. Il permet de modéliser rapidement des structures pas trop
complexes.
Inconvénients :
1. non-déterminisme
2. Pauvre en contraintes et en structures complexes
33
• Associations binaires ou associations n-aires
34
• Comment représenter des données sur les inscriptions
– 1 enseignant enseigne une ou plusieurs matières à des
étudiants
– 1 étudiant suit 1 ou plusieurs matières chacune avec un
enseignant
• Entités:
35
36
37
1. Première lecture : Identifier les entités les plus
naturels
2. Deuxième lecture : Identifier les associations
entre ces entités (verbes n’exprimant pas de
dépendance fonctionnelle)
3. Recenser les attributs et les identifiants de ces
entités et associations (constitution du
dictionnaire de données)
4. Déterminer les cardinalités entre entités et
associations
5. Enumérer des contraintes d’intégrité.
38
• Comment identifier les entités dans un texte?
– Généralement identifié par un sujet ou un complément.
– Le nom de l’entité est suivi dans le texte par une des
expressions suivantes : est caractérisé par, est composé de,
est identifié par, contient les informations suivantes, est
décrit par, …
39
• On veut modéliser les recettes de cuisine,
sachant qu’une recette est composée d’un
nom, une liste d’ingrédients, un mode de
préparation (texte descriptif) et du temps de
cuisson. Chaque ingrédient est de type donné
(solide, liquide, poudre,…), d’une unité de
mesure donnée (litre, gramme, verre,) et un
type d’ingrédient utilise toujours la même
unité.
40
• On veut modéliser les recettes de cuisine,
sachant qu’une recette est composée d’un
nom, une liste d’ingrédients, un mode de
préparation (texte descriptif) et du temps de
cuisson. Chaque ingrédient est de type donné
(solide, liquide, poudre,…), d’une unité de
mesure donnée (litre, gramme, verre,) et un
type d’ingrédient utilise toujours la même
unité.
41
• On veut modéliser les recettes de cuisine,
sachant qu’une recette est composée d’un
nom, une liste d’ingrédients, un mode de
préparation (texte descriptif) et du temps de
cuisson. Chaque ingrédient est de type donné
(solide, liquide, poudre,…), d’une unité de
mesure donnée (litre, gramme, verre,) et un
type d’ingrédient utilise toujours la même
unité.
42
43
44
Exercice 1
45
Exercice 2
46
Exercice 3
47