Académique Documents
Professionnel Documents
Culture Documents
1/30
Design logique
de EA vers des tables
normalisation de schma
2/30
Type d entit
similaire la notion de classe, dfinit la structure
commune d un ensemble d entits
Nom
Proprit
atomiques
ID
Tlphone
Diagramme ER
Type d entit --> rectangle
Proprit
--> ovale
Taille
lve
3/30
Proprits identifiantes
Ensemble de proprits dont la valeur ne
peut pas appartenir plus qu une entit
Doit tre fix pour chaque type d entit
Soulignes dans le diagramme ER :
Nom
Prnom
Tlphone
Taille
Elve
4/30
Associations
Lien entre deux ou plusieurs types d entit
Diagramme ER : losange
lve
Assiste
Cours
Type d associations
dfinit des liens entre des types d entit.
la valeur d un type d association peut tre une table :
une colonne par type d entit participant l association
une ligne pour chaque combinaison d entits participant une
association
Elve
Jean
Jean
Jacques
Cours
Macro Economie
Anglais
E-Commerce
5/30
Cardinalit
Min:Max
Valeurs considrer :
0:1, 1:1
0:N, 1:N,
M-N
Exemple :
lve
1:M
Assiste
0:N
Cours
6/30
Associations ternaires
Le plus souvent les associations binaires suffisent
Des associations entre trois types d entit (ou plus) peuvent
tre ncessaires
Exemple : liens entre Elves, Cours et TH
lve
Assiste
Reprsentation correcte
Cours
Compos
TH
7/30
lve
suivre
Cours
lve
TH
Jean
Jean
Jacques
Cours
Macro Economie
Anglais
E-Commerce
TH
s40#1
s40#2
s40#1
8/30
lve
Assiste
Cours
Simplification de :
Anne
Annes
lve
Assiste
Cours
9/30
Proprit multivalue
Anne
lve
Assiste
Cours
10/30
Bar
1:N
frquente
Servie
1:M
1:N
0:M
Aime
Bire
0:M
Buveur
0:1
0:M
favorite
11/30
Rles
Une entit peut participer plus qu une fois la
mme association
besoin d associer des rles diffrents pour une entit
Mari
pouse
poux
Buveur
poux
Jean
Jules
pouse
Bernadette
Arlette
12/30
Sous-classe
Sous-classe --> nombre d entits restreint -->
proprits supplmentaires
Exemple : Barman est un buveur
+ ( 1 proprit supplmentaire anciennet et un lien
travaille )
Identifiant du barman est celui de buveur
Id
Bar
frquente
travaille
Buveur
isa
anciennet
Barman
13/30
Sous-classe et hritage
Point de vue Objet :
1 objet (entit) est associ une seule classe
Il hrite les proprits de sa super-classe
Hritage multiple :
Thoriquement possible
Problme rsolution des conflits ?
Contraintes COVER/OVERLAPS
14/30
Host
Nom
15/30
D autres aspects
Choix attribut ou entit?
Exemple: plusieurs adresses
Relation vs entit:
Exemple: manageur (association avec un attribut
budget)
budget global?
16/30
Transposition en relationnel
Type d entit
==> Relation
Proprit
==> Attribut
17/30
Id_Bar
Bar
x:1
gre
Id_Buveur
x:1
Buveur
Bar
Id_Buveur
x:1
habitu
x:n
Buveur
Bar
Id_Buveur
x:m
frquente
x:n
Buveur
1:n
Personne
fait partie
Famille
Prnom
La cl de la relation Personne est compose de celle de la
relation Famille
Personne (Nom_famille, Prnom, )
Famille (Nom, )
21/30
Nom
Buveur
isa
anciennet
Barman
Point de vue OO :
Buveur(Nom, Adresse) et Barman (Nom, Adresse, anciennet)
Point de vue ER
Buveur(Nom, Adresse) et Barman (Nom, anciennet)
22/30
1:m
lve
1:n
Assiste
Cours
23/30
Conclusion
Modlisation simple du monde rel
Transposition relationnelle automatisable
Outils d aide la conception E/A disponibles
sur le march
24/30
Heritage
Equipier
profession
num
nom_partic ipant
prenom_participant
Skipper
1,n
engag
dirig e
role
Epreuve
date
port1
port2
1,n
1,n
1,1
0,n
Classement
0,n
rang
Spons or
Nom_spons or
adresse
1,1
Bateau
Immatriculation
nom
longueur
0,n
finance
1,n
montant
25/30
EQUIPIER
NUM
NOM_PARTICIPANT
PRENOM_PARTICIPANT
PRO FESSION
<non dfini>
<non dfini>
<non dfini>
<non dfini>
NUM = NUM
NUM = NUM
NUM = NUM
SKIPPER
NUM
IMM
NOM_PARTICIPANT
PRENOM_PARTICIPANT
ENG AGE
NUM
<non dfini>
DATE
<non dfini>
IMM
<non dfini>
ROLE
<non dfini>
IMM = IMM
DATE = DATE
EPREUVE
DATE
<non dfini>
PORT1
<non dfini>
PORT2
<non dfini>
<non dfini>
<non dfini>
<non dfini>
<non dfini>
IMM = IMM
IMM = IMM
BATEAU
IMM
<non dfini>
NOM
<non dfini>
LONG UEUR
<non dfini>
DATE = DATE
CLASSEMENT
DATE
<non dfini>
IMM
<non dfini>
RANG
<non dfini>
IMM = IMM
FINANCE
SPONSOR
NOM_SPONSOR
<non dfini>
ADRESSE
<non dfini>
IMM
NOM_SPONSO R = NO M_SPONSOR
NOM_SPONSOR
MONTANT
<non dfini>
<non dfini>
<non dfini>
26/30
-- ===========================================
-- Table : PARTICIPANT
-- ===========================================
create table PARTICIPANT
(
NUM
CHAR(10)
not null,
NOM_PARTICIPANT CHAR(10)
null ,
PRENOM_PARTICIPANT CHAR(10)
null ,
constraint PK_PARTICIPANT primary key (NUM)
)
/
-- ============================================
-- Table : EQUIPIER
-- ============================================
create table EQUIPIER
(
NUM
CHAR(10)
not null,
NOM_PARTICIPANT CHAR(10)
null ,
PRENOM_PARTICIPANT CHAR(10)
null ,
PROFESSION
CHAR(10)
null ,
constraint PK_EQUIPIER primary key (NUM)
)
/
-- ============================================
-- Table : SKIPPER
-- ============================================
create table SKIPPER
(
NUM
CHAR(10)
not null,
IMM
CHAR(10)
not null,
NOM_PARTICIPANT CHAR(10)
null ,
PRENOM_PARTICIPANT CHAR(10)
null ,
constraint PK_SKIPPER primary key (NUM)
)
/
27/30
-- =============================================
-- Table : CLASSEMENT
-- =============================================
create table CLASSEMENT
(
DATE
CHAR(10)
not null,
IMM
CHAR(10)
not null,
RANG
CHAR(10)
null ,
constraint PK_CLASSEMENT primary key (DATE, IMM)
)
/
-- ==============================================
-- Table : FINANCE
-- ==============================================
create table FINANCE
(
IMM
CHAR(10)
not null,
NOM_SPONSOR
CHAR(10)
not null,
MONTANT
CHAR(10)
null ,
constraint PK_FINANCE primary key (IMM, NOM_SPONSOR)
)
/
-- ===============================================
-- Table : ENGAGE
-- ===============================================
create table ENGAGE
(
NUM
CHAR(10)
not null,
DATE
CHAR(10)
not null,
IMM
CHAR(10)
not null,
ROLE
CHAR(10)
null ,
constraint PK_ENGAGE primary key (NUM, DATE, IMM)
)
/
28/30
TD : base Xtlcom
29/30
30/30