Documente Academic
Documente Profesional
Documente Cultură
Plan
Introduction
Introduction sur les systmes dinformation et base de donnes
MCD : Entit-Association
MLD : Le modle relationnel
- Dfinition
- concepts
- Rgles de traduction : passage de E-A vers le relationnel
- Dpendances entre donnes et formes normale
- Algbre relationnel
SQL : Structured Query Language
2
Dfinition :
Ensemble organiss de ressources (humains, matriels, )
et de procdure ou mthodes permettant dacqurir, stocker,
traiter et diffuser linformation dans une organisation
Les moyens humains : ensemble des personnes (les utilisateurs, les dcideurs ) qui
reoivent, manipulent et mettent de l'information
Moyens matriels : ensemble doutils (photocopieurs, ordinateurs, logiciels,
tlcommunication ) permettant de recevoir, manipuler et mettre
de l'information
Les mthodes : ensemble doutils de travail et des rgles permettant de rsoudre
les problmes de gestion.
3
Systme dinformation
Le SI permet de
- collecter des informations
- stocker et mmoriser les informations
fichiers, base de donnes
- exploiter les informations :
interroger, modifier, produire de nouvelles info, analyser
- Diffuser l'information :
mettre, dans un temps utile, linformation disposition
de ceux qui en ont besoin, et sous une forme directement
exploitable afin d'assurer leurs activits.
Le SI assure la circulation des informations destination du
systme de dcision et du systme oprant
utilisation de divers support pour la diffusion : mail, support
papier, orale, applications web,
4
Systme dinformation
Buts des SI :
- Amliorer la productivit
- Assister dans la mise en uvre de la stratgie de lentreprise
Exemple dorganisation
- vente de produit par un grossiste
== > produit achet auprs dun fournisseur et vendu
des clients
Systme dinformation
Systme informatique
Systme informatis
Systme
informatique
Stockage
Stockage de donnes indispensables
- Fichiers
- Base de donnes
Principes
Stockage des donnes dans des fichiers sur les disques
applications manipulent des simples fichiers
Manipulation
des fichiers
Dfinition BD
Qui ce quune base de donne ?
- Une base de donnes (BD), est une entit dans laquelle il
est possible de stocker des donnes de faon structure et
avec le moins de redondance possible.
- Ces donnes sont dcrites selon un certain modle
- Ces donnes doivent pouvoir tre utilises par
des programmes, par des utilisateurs diffrents.
- Le contenu de la base est interrogeables et
modifiables par un groupe d'utilisateurs travaillant
en parallle
- Les donnes stock dans la base de donnes modlisent des objets du
monde rel, ou des association entre objets.
Exemple : Un magasin avec ses articles. Les articles sont les
donnes du monde rel.
10
Utilisations
11
Principe des BD :
Stockage persistant sur disque
Trs gros volumes de donnes
manipulation de donnes : utilisation de langage de
requtes et langages de programmation SGBD
Contexte multi-utilisateurs
12
Dfinition de SGBD
14
Quelques SGBD
15
16
17
aprs mise
jour
tat cohrent
18
Les acteurs
20
21
Terminologie :
Manipulation et restitution des donnes
Permet
Insertion : saisir des donnes
Supprimer : suppression de donnes
modifier : modification des donnes
Interroger : rechercher des donnes en utilisant des requtes (SQL)
La manipulation des donnes est mise en uvre l aide d un
Langage de Manipulation de Donnes (LMD) :
SQL (Structured Query Language) est le Langage standard de
manipulation de BD
22
Terminologie :
Contrainte dintgrit et mtabase
23
Structuration de donns
24
25
interrogation, insertion et
mises jours des donnes
Lune des objectifs majeur des SGBD est de prsenter lutilisateur les
donnes sous forme abstraite :
Le systme masque certains aspects concernant le
stockage et la mise jour des donnes
et facilite lutilisation des ces donnes
26
Niveau
externe
Schma
externe 1
Niveau
conceptuel
Schma
externe 2
Schma
externe n
Schma
conceptuel
Spcification
et analyse
Schma
externe
5- vues
MLD :
Schma
logique
1- Conception
2- Traduction
MCD
3- Implantation
Niveau
interne
Schma
interne
Architecture ANSI/SPARC
Schma
physique
4- stockage
BD
Conception : Reproduire le
monde rel laide dun
modle de donnes
conduisant un schma
conceptuel crit dans
un formalisme
quelconque.
27
29
Un peu d'histoire
1960 : systmes de gestion de fichiers plus ou moins sophistiqus.
1970 : Dbut des systmes de gestion de bases de donnes rseaux et
hirarchiques proches des systmes de gestion de fichiers.
On ne pouvait pas interroger une base sans savoir o tait
l'information recherche (on "naviguait") et sans crire de
programmes.
- Sortie du papier de CODD sur la thorie des relations, fondement
de la thorie des bases de donnes relationnelles.
1980 : Les systmes de gestion de bases de donnes relationnels
apparaissent sur le march.
1990 : Les systmes de gestion de bases de donnes relationnels
dominent le march.
Dbut des systmes de gestion de bases de donnes orients
objet.
30
Objectif
Notre objectif principal :
* Concevoir une base de donnes relationnel
Adoption dune mthode de conception et danalyse :
- UML
- MERISE
* Mise en place de la base et manipulation des donnes
31
Monde
rel
tables
ralisateur
Livres
films
Etudiant
Empreint
acteurs
32
Problmes et dfauts :
- risque de redondances
- Anomalies possibles lors de linsertion :
- Qui distingue un film dun autre ? 2 films peuvent-il avoir le
mme titre ?
- peut-on avoir des noms de ralisateur identiques ?
- quand on peut dire que la mme information est rpte ?
33
salaris
Etudiant
Livres
Empreint
ralisateur
films
acteurs
35
36
Dmarche
0 - Observation de la ralit
Collecte dinformations
Indpendant
de tout
logiciel
Utilisation du
modle
relationnel
37
38
Plan
Introduction
Introduction sur les systmes dinformation et base de donnes
MCD : Entit-Association
MLD : Le modle relationnel
- Dfinition
- concepts
- Rgles de traduction : passage de E-A vers le relationnel
- Dpendances entre donnes et formes normale
- Algbre relationnel
SQL : Structured Query Language
39
Modle Entits-Associations
40
Modle Entits-Associations
Propos en 1976 (Chen)
Il est la base de la plupart des mthodes de conception (MCD Merise, )
Avantages :
Simple
Graphique
Facilite le dialogue avec les utilisateurs
==> Modle de conception de donnes
41
Modle Entits-Associations
Retour l exemple prcdent :
entit ralisateur
Modle Entits-Associations
Objectifs
Etudier et reprsenter dune manire structure les
donnes dun systme (une entreprise)
Description gnrale
Entit
Association
Attribut
43
Entit (1)
Alien
1979
44
Entit (2)
Identifiant dune entit:
Objectif : chaque occurrence doit pouvoir tre repre de manire
unique et sans ambigut, pour tre distingue de toutes les autres
Identifiant :
- Attributs ou groupe dattributs qui permet de reprer une
occurrence de manire unique. On souligne lidentifiant.
- On privilgie lidentifiant le plus court, le plus naturel (nbon
de commande, code client, n tudiant,)
- On peut crer un identifiant artificiels
- Identifiant non variable dans le temps.
45
Entit (3)
Exemple 1 : les films peuvent tre regroups dans une mme
entit films. Alors que les ralisateurs sous une entit
ralisateur:
entit films
entit ralisateur
identifiant
mais si
homonymes ?
attributs
46
Entit (3)
entit ralisateur
entit films
Lien ?
Progrs :
- il n'y a plus de redondance dans la base de donnes
- il n ya plus danomalies de mise jour
lien ?
47
Entit (4)
Exemple 2 : Une entreprise qui vents des articles .
== > les clients de lentreprise peuvent tre regroups dans une
mme entit clients. Alors que les articles vendus sous une entit
articles :
!! les articles et les clients ne peuvent pas tre regroups car les
informations ne sont pas homognes. Il faut donc leurs rserv 2
entits diffrentes : clients et articles
48
Association (1)
Chaque entit entretient un certain nombre de liens avec
dautres entits : ces liens sont appels des associations.
Dfinition : une association est une liaison, qui a une
significations, entre plusieurs entits
exemple : commander est une liaison entre clients et articles
commander est une association
Association de 2 entits
clients
articles
Code_client
nom
prnom
Adresse
Id_article
dsignation
prix
attribut
Commander
quantit
Nom de lassociation
49
Association (2)
Ralise
50
Association (3)
Caractristiques
Une association comporte 4 caractristiques essentielles :
Un nom unique (verbe),
Un ou plusieurs attributs,
1, 2, ou plus de 2 entits concernes,
2 ou plus de 2 occurrences concernes.
51
Association (4)
Types dassociations :
- Binaire
- Association plurielle
- Association rflexive
- Association n-aire (n>2)
52
Association binaire
Association entre deux entits diffrentes
Association binaire
Exemple :
Ralise
53
Association n-aire
dsigne une association qui lient n entits.
projeter
tarif
54
Association rflexive
Association entre une entit avec elle mme
Exemple :
le dirigeant
Association rflexive
Salari
matricule
nom
prnom
fonction
Diriger
le dirig
Concepts de base :
Lassociation dune entit
vers elle mme doit porter sur
des occurrences diffrentes
salari
24
Nill
Olvier
salari
Diriger
320
Dupond
Jean
55
Association plurielle
dsigne des associations diffrentes qui relient les
mmes entits
Exemple :
Association plurielle
crit
Auteur
Livre
Num
Nom
cote
titre
critique
56
57
58
1, n
59
E1
E2
E1
0,1
1,1
E1
Assoc.
0,N
1,N
1,1
E2
E2
Assoc.
Assoc.
1,1
E1
E2
Assoc.
1,1
0,N
60
clients
articles
Code_client
nom
prnom
Adresse
Id_article
dsignation
prix
Commander
quantit
Questions :
- cot entit clients : combien darticle peut commander un client ?
- cot articles : un article peut tre commander par combien de clients?
== > Les cardinalits doivent toujours tre analyses du point de vue de
lentit la quelle elles sont associes
61
articles
,n
Commander
quantit
0,n
Id_article
dsignation
prix
La cardinalit minimal de 1 doit se justifier par le fait que les individus de lentit
en question ont besoin de lassociation pour exister.
Dans notre exemple un client nexiste pas avant davoir commander un article
== > cardinalit min de 1
Remarque : la discussion autour de la cardinalit min 0 ou 1 na de sens que
lorsque la cardinalit max est de 1
62
1,1
1,n
- En indiquant ici qu'un film est ralis par un seul metteur en scne
== > cest un choix !!
On va voir plus loin (passage entit-association au relationnel) :
63
1,1
appartient
0,n
dateAchat
Rponse :
64
Employs
Diriger
num_employ
Nom
Prnom
Fonction
crit
Auteur
Livre
Num
Nom
cote
titre
critique
65
1,n
1,1
A
b
1,1
1,1
1,n
Lentit A est
transforme en
association A
1,n
A
b
1,n
1,n
1,n
66
Crneau
numCrneau
Date
Heure dbut
0,n
lieu pendant
Crneau
numCrneau
Date
Heure dbut
1,1
projection
numProj
tarif
1,1
1,1
concerne
0,n
Film
numFilm
Titre
dure
quivalence
Projeter
lieu dans
association projeter
0,n
0,n
Salle
numSalle
capacit
Film
0,n
numFilm
Titre
dure
tarif
0,n
Salle
numSalle
capacit
67
Entit faible
On parle dentit faible si cette dernire ne peut exister qu'en
troite association avec une autre, et est identifie
relativement cette autre entit.
exemple : cinma et ces salles. Un cinma est composs de
plusieurs salles. Une salle appartient un cinma.
E1
(1,1)
-,n
E2
68
69
Dpendance fonctionnel
Dfinition : un attribut Y dpend fonctionnellement dun attribut X
ssi une valeur de X induit une et unique valeur de Y.
Notation : X Y
exemple : numClient nomClinet
par contre :
nomClient numClient
car on peut avoir plusieurs client de mme nom mais de
numClient diffrents
-
70
Dpendance fonctionnel
Exemple 1 : relation client
CLIENT
numClient
nom
prnom
adresse
NumClient
Nom
Prnom
Adresse
numClient
Dpendance fonctionnel
Y
X == > X Y
type,marque type
U
1 - Rflexivit :
exemple e:
2 - Augmentation :
X Y => X , Z
Y, Z
si X dtermine Y, les deux ensemble dattributs peuvent tre enrichis
par un mme troisime
exemple :
numVoiture couleur
numVoiture,marque couleur, marque
3 Union :
4 - Projectivit :
Y et X
X
Z => X
Y,Z
5 - Transitivit :
Y et Y
6 - Pseudo-transitivit :
Y et WY
=> X
Y,Z
Y et X
Z => X
Z => WX
Z
Z
72
Dpendance fonctionnel
- Cas dune association 1,1 1,n
CLIENT
COMMANDE
N Commande
PASSER
1,1
0,N
Nom
Date Commande
Adresse
Montant
N Commande
Code Client
DF reprsentant lassoc.
Code Client
Nom
Adresse
Date Commande
Montant
Tlphone
Dpendance fonctionnel
FACTURE
PRODUIT
0,N
N Facture
Date Facture
COMPORTER
1,N
Rf. Produit
Quantit Produit
Prix Unitaire
Montant
Dsignation
DF reprsentant lassoc.
Quantit Produit
74
Formes normales
1ere forme normale : un attribut ne peut prendre quune
valeur et non un ensemble ou liste de valeur
- Si un attribut prends plusieurs valeur == > une nouvelle entit
en association avec la premire
livre
numLivre
Titre
Auteurs
1ere forme
normale
auteurs
Livres
numLivre
Titre
1,n
Ecrit par
1,n
numAuteur
Nom
Prenom
DateNaissance
Entit
supplmentaire
Pour un livre on peut avoir
plusieurs auteurs == > 1ere
forme normale non respecte
75
Formes normales
2 me forme normale :
tre en 1ere forme normale
+ lidentifiant peut tre compos de plusieurs attribut, les autre attributs
de lentit doivent dpondre de la totalit de lidentifiant et non dune
partie.
3 me forme normale :
tous les attributs qui nappartiennent pas lidentifiant de lentit doivent
dpendre directement de son identifiant et daucun autre attribut.
Si ce nest pas le cas : placer lattribut pathologique dans une entit
spare en association avec la premire
Avions
numAvion
Modle
Constructeur
Capacit
propritaire
Avions
Constructeur et capacit
dpendent de Modle
numAvion
propritaire
Modle
1,1
appartient
1,n
numModle
Modle
Constructeur
Capacit
76
Dmarche suivre
- dterminer la liste des entits
- pour chaque entit :
tablir la liste des attributs
parmi ceux-ci dterminer un identifiant
- dterminer les association entre les entits
- pour chaque association :
tablir la liste des attributs,
vrifier la dimension (binaire, ternaire ),
dfinir les cardinalits
- vrifier le schma obtenu
- valider avec les utilisateurs
77