SlideShare une entreprise Scribd logo
1  sur  51
Pratique de Bases de Données
M. Khalid EL HACHEMI
Téléchargement cours + exemples :
I.N.S.E.A 2008 - 2012
Adresse http://ekhalid.magix.net/public
Plan du cours
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I- Généralités
1- Historique
2- Pourquoi une BD ?
3- Qu’est-ce q’une base de données (BD et SGBD)
II- Fonctions d’un SGBD
III- Les différents niveaux de représentation d’une BD
1- Niveau externe
2- Niveau conceptuel
3- Niveau interne
Plan du cours
CHAPITRE II: La conception logique d’une BD
I- Le modèle conceptuel ‘’Liens-Entités’’
II- Le modèle hiérarchique
III- Le modèle relationnel
IV- La méthode Merise
1- Modèle conceptuel de données (MCD)
2- Modèle logique de données (MLD)
3- Modèle physique de données (MPD)
CHAPITRE II: Les langages de manipulation de donnée
I- SQL
Exercices d’application sur MS Access
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités
1- Historique:
* Données stockées sur bande magnétique sous forme d’enregistrement séquentiels pour
constituer des Fichiers
* Apparition des disques magnétiques: Accès plus rapide aux données et stockage d’une
masse plus importante d’information  notion d’organisation de fichier et du système de
gestion des fichiers
* Avec le temps, les fichiers classiques pose un nombre de défaut et de contraintes.
* De plus, dirigeants des entreprises deviennent de plus en plus exigeant: besoin
d’exploiter d’une façon fine le système d’information par le biais de requête  naissance
du concept des bases de données
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Bande magnétique
disques magnétiques:
8’’: 1970-1980
5.25": 1976
3.5" : créé par Sony en 1981
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités
1- Historique (suite):
* Milieu des années 60: naissance de la 1ère génération des SGBD basés sur des
conception d’hiérarchie et de réseau
* Début des années 70 : 2ème génération basées sur le modèle relationnel
* Début des années 80 : naissance des SGBD répartis puis multimédia (images, voix …)
* Actuellement on parle de base de données orientées objets.
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités
2- Pourquoi une BD ?
Exemple: Considérons une compagnie d’assurance vendant trois sortes d’assurances:
Assurance vie, automobile et local)
-La compagnie est organisée en trois département, chacun a ses propres fichiers
(traitement traditionnel). L’information est utilisée pour réaliser certain travaux.
Travail 1: gérer les assurances, Pour cela on a besoin :
-d’un fichier F1 des assurés : Numéro, nom, prénom, date de naissance, sexe, adresse..
-des programmes d’applications: P1 calcul de prime
P2  attestations
P3  mise à jour
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités
2- Pourquoi une BD ?
Exemple (suite):
Travail 2: gérer les sinistres, Pour cela on a besoin :
-d’un fichier F2 des sinistres : Numéro, date du sinistre, lieu, détail du sinistre..
-des programmes d’applications: P4 Ajout d’un sinistre
P5  mise à jour
Travail 3: règlement des sinistres, Pour cela on a besoin :
-des fichiers F1 et F2.
-d’un programme d’applications: P6 calcul et production du règlement
Chaque département a son propre système d’information semblable à celui-ci
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Récapitulons:
Département vie :
Chaque département a son propre système d’information semblable à celui-ci
F1
P1
P2
P3
Prime
Attestation
M-à-j
F2
P6
P4
P5
Prime
Attestation
M-à-j
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problèmes avec l’utilisation des fichiers
Problème 1: un adhérent X a souscrit
l’assurance vie et auto. Son identifiant
(nom, prénom, age, adresse…) va figurer dans
deux fichiers
Défaut 1:
Redondance d’information  espace perdu
F1
P1
P2
P3
Prime
Attestation
M-à-j
F2
P6
P4
P5
Prime
Attestation
M-à-j
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problème 2: L’adhérent X déménage et
envoie l’avis de changement d’adresse qui
aboutit au département auto lequel met
son fichier à jour mais ne transmet pas
l’information au département vie
Défaut 2:
Redondance d’information  inconsistance
d’information
ou
coût élevé de
modification
F1
P1
P2
P3
Prime
Attestation
M-à-j
F2
P6
P4
P5
Prime
Attestation
M-à-j
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problèmes avec l’utilisation des fichiers
Problème 3: un changement dans le calcul des
primes exige une nouvelle donnée dans F1 (la
profession par exemple). Les programmes P2 et P3
bien que non concernés par cette nouvelle
information sont à corriger, de plus le fichier F1 est
à refaire
Défaut 3:
les programmes sont dépendant des données
F1
P1
P2
P3
Prime
Attestation
M-à-j
F2
P6
P4
P5
Prime
Attestation
M-à-j
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problème 4: on veut savoir combien de femmes de
25 à 40 ans ont souscrit une assurance vie. Il faut
alors écrire tout un programme pour le savoir
Défaut 4:
les données sont accessibles seulement à travers
les programmes d’application
F1
P1
P2
P3
Prime
Attestation
M-à-j
F2
P6
P4
P5
Prime
Attestation
M-à-j
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problèmes avec l’utilisation des fichiers
Problème 5: on veut savoir combien de personnes de sexe masculin ont souscrit une
assurance vie, une assurance local, mais pas d’assurance auto. Pour cela
il faut interroger les 3 fichiers F1, ce qui peut être complexe en raison de
codage différent ou de contraintes périphériques.
Défaut 5: les données dispersées créent de grandes difficultés pour le traitement
d’ensemble. A la limite, le délai de réponse peut être très grand, ou encore les
données inaccessibles.
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Récapitulatif  objectifs des BD
Défauts avec les fichiers Objectifs des BD
Redondance d’information Unicité de l’information
Dépendance des données à l’égard des
programmes
Indépendance des programmes d’applications
Données accessibles à travers les
programmes d’applications
Accès par : programmes et langages des
requêtes
Données dispersées et incohérentes Intégrité des données
Chacun a ses propres fichiers Partage des données par plusieurs utilisateurs
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
3- Qu’est ce qu’une base de données ?
Deux concepts sont à définir: une BD et un System de Gestion de BD (SGBD)
Une BD est une collection de données, de différents types, interconnectées et sur
lesquelles on peut développer plusieurs applications.
Une BD est un ensemble de données structurées et inter reliées qui sont fiables,
correctes, cohérentes et partageables par plusieurs utilisateurs ayant des besoins
d’informations différents et cela sous le contrôle d’une autorité unique qui est
l’administrateur de la BD (DBA)
Un SGBD est un logiciel qui permet à un utilisateur d’interagir avec une BD (stocker,
accéder, mettre à jour des données (Access, Oracle, SqlServer…)
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD
Un SGBD permet principalement d’organiser les données sur les supports, et fournit les
procédures de manipulation de ces mêmes données (recherche, sélection, mise à jour..)
Mais il a d’autres fonctions:
1. Description: le SGBD doit mettre à la disposition de l’utilisateur un outils pour décrire
l’ensemble de données qui sont stockées dans la BD. Il y a différents niveaux de description
de ces données:
-description logique: perception de la BD par l’utilisateur
-description physique: organisation des données sur les supports physiques
La description se fait par un langage de définition de données (LDD) propre à chaque
SGBD
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD
2. Utilisation: offrir à l’utilisateur une interaction avec la BD (rechercher, sélectionner et
modifier) .
Il existe 2 façon pour interroger la BD:
- par programmes d’application (informaticiens)
- avec langage de requêtes (non informaticien)
Cette utilisation se fait par un langage de manipulation de données (LMD)
3. Intégrité: offrir à l’utilisateur la possibilité de définir des règles qui permettent de
maintenir l’intégrité de la BD (règles ou contraintes d’intégrité: propriétés qui devront être
toujours vérifiées).
Exemple: 0<Note<20 ou note = -1 (absent)
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD
4. Confidentialité : puisqu’une BD est partagée par plusieurs utilisateurs, certains sous
ensembles ne doivent être accessibles que par des personnes autorisées.
Le SGBD doit offrir des mécanismes permettant de vérifier les droits d’accès des utilisateurs
(mots de passe, rôle..)
Exemple: …….
5. Synchronisation d’accès ou concurrence d’accès : lorsque les programmes
d’application accèdent aux même informations au même temps, le SGBD doit offrir les
mécanismes pour détecter les cas où il y aurait conflit d’accès et de les traiter correctement
(problème de lecture fantôme…)
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD
6. Sécurité de fonctionnement : en cas d’incident provenant du matériel ou du logiciel, la
BD n’est plus opérationnelle.
Afin d’assurer le redémarrage du système après la pane, le SGBD doit rétablir la base dans
un état cohérent (sur la base des fichiers journal et des sauvegardes à intervalles réguliers)
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD
1- Niveau externe
2- Niveau conceptuel
3- Niveau interne
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD
Schéma
externe 1
Schéma
conceptuel
Schéma
externe 1
Schéma
externe 1
Schéma
physique
BD
physique
Monde
réel
Procéssus de
modélisation
Niveau Externe Niveau Conceptuel Niveau interne
Groupes
d’utilisateurs
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD
1- Le niveau externe est l’ensemble des schémas externes des différents groupes
d’utilisateurs.
Le schéma externe est la vision d’une partie du schéma conceptuel par un groupe
d’utilisateurs
Exemple: Le service vente n’a pas besoin d’avoir une vision globale sur toute la base, il peut
se limiter à la partie qui englobe les commandes, fournisseurs et produits
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD
2- Le niveau conceptuel: Le schéma conceptuel est la partie fondamentale dans
l’architecture d’un système de BD. Il correspond à la sémantique (liens logiques) des
données de l’entreprise
Il représente les objets du monde réel (classe d’objets) et les associations entre eux
Exemple:
X
Y
.
Z
I.A
I.E
.
T
Etudiants Cycles
Inscription
(lien logique)
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD
Le processus de modélisation se fait à l’aide d’un modèle de données.
Un modèle de données est un outil formel (ensemble de concepts et de règle) utilisés pour
représenter l’organisation logique des donnes
On distingue essentiellement entre trois modèles principaux:
- Le modèle hiérarchique
- Le modèle réseau
- Le modèle relationnel
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD
3- Le niveau interne: Le schéma physique a pour but de spécifier comment les donnée
seront stockées sur les support (noms de fichiers, organisation, localisation,
enregistrements, chemin d’accès…)
Schéma
externe 1
Schéma
conceptuel
Schéma
externe 1
Schéma
externe 1
Schéma
physique
BD
physique
Monde
réel
Procéssus de
modélisation
Niveau Externe Niveau Conceptuel Niveau interne
Groupes
d’utilisateurs
CHAPITRE II: LA CONCEPTION LOGIQUE D’UNE BD
La conception logique d’une BD consiste à définir :
1- les types de données élémentaires (attributs) : nom client, adresse…
2- les types de données composées qui permettent de regrouper les attributs afin de décrire
les entités du monde réel: Client, étudiant, voiture, …
3- les types de données composées qui permettent de regrouper les attributs afin de décrire
les association du monde réel : inscription, propriétaire, locataire,…
4- Éventuellement, des règles que devrons suivre les données au cours de leurs existence
dans le système
Représentation
Modèle standard : Liens-Entités
1- Le Modèle Conceptuel « LIENS-ENTITES »
Définitions :
Attribut: c’est la plus petite abstraction au niveau de l’entreprise qui a une signification pour
l’utilisateur (Nom Client, CIN, Prix, …)  attribut = propriété
Lien : c’est une association entre des objets. Un lien n’est pas une règle générale mais il
traduit une contrainte de l’entreprise
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens :
1- Lien hiérarhique de type (1 : N):
Soit A et B deux ensemble d’objets. On a un lien hiérarchique de type (1 : N) de A vers B,
noté : A (1 : N) B , si une occurrence de A permet de déterminer 0, 1 ou plusieurs
occurrences de B et si à une occurrence de B correspond au plus une occurrence de A
Exemple:
S1
S2
.
Sn
E1
E2
.
Ep
A:
Service
B:
Employé
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens :
2- Lien maillé de type (N : M):
Soit A et B deux ensemble d’objets. On a un lien maillé de type (N : M) de A vers B,
noté : A (N : M) B , si l’on n’a aucune restriction sur le nombre d’occurrences de A et de
B (c.à.d à une occurrence de A correspond 0, 1 ou plusieurs occurrences de B et
inversement)
Exemple:
F1
F2
.
Fn
P1
P2
.
Pi
A:
Fournisseur
B:
Produit
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens :
3- Lien fonctionnel de type (N : 1):
Soit A et B deux sous ensemble d’objets. On a un lien fonctionnel de type (N : 1) de A vers
B, noté : A (N : 1) B , si toute occurrence de A détermine au plus une occurrence de B
et si à une occurrence de B peut correspondre 0, 1 ou plusieurs occurrences de A
(B est dite déterminée par A)
Exemple: Etudiant (N°Etudiant, Nom, Clase)
A = {N°Etudiant}
B = {Nom, Clase} A (N : 1) B
Quand on connaît N°Etudiant on peut connaître son nom et sa classe, alors que
l’inverse n’est pas vrai.
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens :
4- Lien particulier de type (1 : 1):
Un lien particulier de type (1 : 1) noté : A (1 : 1) B , correspond à ce qu’une occurrence
de A détermine au plus une occurrence de B et inversement.
Exemple: Pays Capitale
Remarques:
Les liens hiérarchiques (1:N) et les liens maillés (N:M) sont des liens inter-entités
Les liens foncionnels sont des liens intra-entités
1- Le Modèle Conceptuel « LIENS-ENTITES »
Notion d’entité : Entité = Ensemble d’Attributs + Liens fonctionnels
Entité : Ensemble d’attributs liés fonctionnellement, qui représentent une abstraction d’une
partie de l’entreprise, qui a un nom et dont on peut identifier chaque occurrence
Exemple: Entité client, entité étudiant, entité produit
On distingue 2 types d’entités
a- les entités statiques (autonomes)
Entités dont l’existence ne dépend pas des attributs d’une autre entité
Exemple: Fournisseur, Client, ..
1- Le Modèle Conceptuel « LIENS-ENTITES »
b- les entités dynamiques
Entités dont l’existence est liée à des attributs d’une ou plusieurs entités statiques
Elles n’ont un sens que comme résultat de l’association entre certaines entités statiques.
Une entité dynamique peut être porteuse ou non porteuse d’information
Exemple 1 : Client( N°Client, Nom, Adresse)
Article( N°Article, Désignation, Prix)
Article-Cde( N°Article, N°Client , QtéCommandée, DateCde)
Exemple 2 : Personne( N°CIN, Nom, Adresse)
Voiture( N°Voiture, Marque, Couleur, …)
Propriété( N°CIN, N°Voiture)
1- Le Modèle Conceptuel « LIENS-ENTITES »
Remarques:
- Toute entité doit avoir un nom qui la distingue des autres
- Chaque élément d’une entité est appelé une occurrence
- Chaque occurrence d’une entité est distincte des autres
- Chaque entité possède au moins un identifiant constitué d’un ou plusieurs attributs qu’on
appelle clé.
Exemple d’illustration: entité clé attribut
Abonné( N°Abonné, Nom, Adresse)
valeur de l’attribut N°Abonné ( 123, Slimani, Rabat )
occurrence
2- Le Modèle Hiérarchique
1- Définitions :
Un modèle de données hiérarchique : est un ensemble de définitions d’arborescence
Une définition d’arborescence : est un diagramme de données dans lequel chaque
entité, sauf la racine, a un seul arc incident de type (1:N) et 0, 1 ou plusieurs arcs
émergeant de type (1:N).
Exemple d’une définition d’arborescence :
Département
Division
Employé Projet
2- Le Modèle Hiérarchique
Exemple d’un modèle qui n’est pas hiérarchique :
Professeur
Cours
Salle
Étudiant
Cycle
2- Le Modèle Hiérarchique
le modèle hiérarchique correspondant est constitué de 2 définitions d’arborescence :
Professeur
Cours
Salle
Étudiant
Cours Étudiant
Cycle
1ère définition d’arborescence
1éme définition d’arborescence
2- Le Modèle Hiérarchique
1- Définitions (suite) :
Une base de données hiérarchique : est un ensemble d’occurrence de définitions
d’arborescence
Exemple : soit le modèle suivant
Division
Service
N°Service N°Division
S1
S2
S3
S4
S5
S6
D1
D1
D2
D3
D3
D3
Le modèle correspondant est :
2- Le Modèle Hiérarchique
2- Caractéristiques du modèle :
a- La relation Parent-Enfant : une occurrence d’entité d’un niveau i est dite parent, si elle
est associée avec au moins une occurrence d’entité de niveau i+1
Exemple : soit le modèle hiérarchique suivant
Département
Division
Employé Projet
Enfant
Niveau 0
Niveau 1
Niveau 2
Niveau 3
2- Le Modèle Hiérarchique
2- Caractéristiques du modèle :
b- Élimination des occurrences d’entités : une occurrence d’une entité doit être reliée à
une occurrence Parent et ainsi de nœud en nœud jusqu’à l’occurrence racine.
 l’élimination d’une occurrence d’entité donnée provoque l’élimination de tous ses
descendants
c- Les liens maillés dans le modèle hiérarchique : Le modèle hiérarchique ne peut
représenter directement un lien (N : M) entre deux entités.
Solution : duplication des occurrences ou création d’une nouvelle entité permettant
l’éclatement d’un lien (N : M) en deux lien (1 : N)
2- Le Modèle Hiérarchique
Exemple : soit la structure suivante
Fournisseur
Produit
Fournisseur Produit
F1
F2
F3
F1
F2
F3
P1
P1
P2
P3
P4
P5
N : M
Solution avec duplication des occurrences :
Fournisseur Produit
Fournisseur Produit
Fournisseur
Produit
2- Le Modèle Hiérarchique
(suite …)
Fournisseur
Produit
Fournisseur Produit
F1
F2
F3
F1
F2
F3
P1
P1
P2
P3
P4
P5
N : M
Solution par intégration d’une entité de lien :
Fournisseur Produit
Four/Prod
Fournisseur Produit
Four/Prod Four/Prod
Pointeurs logiques
Redondance au niveau logique
uniquement
2- Le Modèle Hiérarchique
3- Les avantages du modèle :
- Le modèle hiérarchique est conceptuellement simple à comprendre et à utiliser
- Dans la réalité, plusieurs applications ne nécessitent que des relation de type (1 : N)
4- Les défauts du modèle :
- Démonstration à travers l’exemple:
Nom Dept Chef Dept Nbre employés
Nom Service Chef service
Num Emp Diplôme Date Recrut Salaire
Département
Service
Employé
2- Le Modèle Hiérarchique
a- Problème de suppression :
- Un service devient inutile et on veut le supprimer de la base, sans toutefois supprimer les
informations des employés de ce service (qu’on va réaffecter)
 L’élimination de ce service entraîne l’élimination de tous ses descendants
Nom Dept Chef Dept Nbre employés
Nom Service Chef service
Num Emp Diplôme Date Recrut Salaire
Département
Service
Employé
2- Le Modèle Hiérarchique
b- Problème d’insertion :
- Supposons qu’on a recruté un nouvel employé et qu’on ne l’a pas encore affecté.
Où mettrons nous les informations sur cet employé??
 Impossible d’insérer une occurrence fils sans insérer les occurrences des différents
parents hiérarchiques
Nom Dept Chef Dept Nbre employés
Nom Service Chef service
Num Emp Diplôme Date Recrut Salaire
Département
Service
Employé
2- Le Modèle Hiérarchique
c- Problème de modification :
- Supposons qu’une augmentation des salaires touches une catégorie particulière
d’employés (licenciés par exemple). Le salaire doit être changé partout où apparaît le
diplôme licence. Pour cela, il faut parcourir tous les département et pour chaque
département passer par tous les services, puis tous les employés pour décider de
l’augmentation
 La modification entraîne
un coût élevé, ou risque
d’inconsistance
Nom Dept Chef Dept Nbre employés
Nom Service Chef service
Num Emp Diplôme Date Recrut Salaire
Département
Service
Employé
2- Le Modèle Hiérarchique
d- Problème de recherche / consultation :
- Il est facile de connaître les employés qui travaillent dans un département donné.
Cependant, il est beaucoup plus compliqué de savoir dans quel département se trouve les
employés ayant un salaire donné.
 Coût élevé de recherche
Nom Dept Chef Dept Nbre employés
Nom Service Chef service
Num Emp Diplôme Date Recrut Salaire
Département
Service
Employé
2- Le Modèle Hiérarchique
- Autres Problèmes :
- La difficulté d’exprimer les relations (N : M).
- nécessité d’espace de stockage important .
- Impossibilité d’exprimer des parents multiples .
2- Le Modèle Relationnel
Inventé par CODD en 1970. il repose sur des bases mathématiques et principalement sur le
concept de relation …
Département
Division
Employé Projet
Département
Division Employé
Projet

Contenu connexe

Similaire à 1144967.ppt

Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdfCours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdfJordaniMike
 
Intro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.pptIntro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.pptIdriss22
 
Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfEST-UMI de Meknès
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.pptIdriss22
 
Intro SGBD et BD.ppt
Intro SGBD et BD.pptIntro SGBD et BD.ppt
Intro SGBD et BD.pptBahaty1
 
4 ModeleRelationnel.pdf
4 ModeleRelationnel.pdf4 ModeleRelationnel.pdf
4 ModeleRelationnel.pdfAzedineSariye
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxFootballLovers9
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxZakariaLabay
 
Cours Base de données relationnelles
Cours Base de données relationnellesCours Base de données relationnelles
Cours Base de données relationnellesAymen Kasmi
 
Conception datawarehouse
Conception datawarehouseConception datawarehouse
Conception datawarehouseHassane Dkhissi
 
cours de methode d'analyse informatique2.pptx
cours de methode d'analyse informatique2.pptxcours de methode d'analyse informatique2.pptx
cours de methode d'analyse informatique2.pptxeducationnet920
 
Hamdaoui abdelilah
Hamdaoui abdelilahHamdaoui abdelilah
Hamdaoui abdelilahMoez Moezm
 
cdg69-i-int-2017-sujet-projet_etude-isi-sic.pdf
cdg69-i-int-2017-sujet-projet_etude-isi-sic.pdfcdg69-i-int-2017-sujet-projet_etude-isi-sic.pdf
cdg69-i-int-2017-sujet-projet_etude-isi-sic.pdfZkSadrati
 
10h20 orange agnes_ripoll_ghys
10h20 orange agnes_ripoll_ghys10h20 orange agnes_ripoll_ghys
10h20 orange agnes_ripoll_ghysAssociationAF
 

Similaire à 1144967.ppt (20)

Cours BDD.pptx
Cours BDD.pptxCours BDD.pptx
Cours BDD.pptx
 
Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdfCours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdf
 
Intro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.pptIntro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.ppt
 
Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdf
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt
 
Intro SGBD et BD.ppt
Intro SGBD et BD.pptIntro SGBD et BD.ppt
Intro SGBD et BD.ppt
 
Introduction au BIG DATA
Introduction au BIG DATAIntroduction au BIG DATA
Introduction au BIG DATA
 
4 ModeleRelationnel.pdf
4 ModeleRelationnel.pdf4 ModeleRelationnel.pdf
4 ModeleRelationnel.pdf
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
 
Cours Base de données relationnelles
Cours Base de données relationnellesCours Base de données relationnelles
Cours Base de données relationnelles
 
Conception datawarehouse
Conception datawarehouseConception datawarehouse
Conception datawarehouse
 
Rapport final-2
Rapport final-2Rapport final-2
Rapport final-2
 
cours de methode d'analyse informatique2.pptx
cours de methode d'analyse informatique2.pptxcours de methode d'analyse informatique2.pptx
cours de methode d'analyse informatique2.pptx
 
Formations
FormationsFormations
Formations
 
Intro merise
Intro meriseIntro merise
Intro merise
 
Hamdaoui abdelilah
Hamdaoui abdelilahHamdaoui abdelilah
Hamdaoui abdelilah
 
cdg69-i-int-2017-sujet-projet_etude-isi-sic.pdf
cdg69-i-int-2017-sujet-projet_etude-isi-sic.pdfcdg69-i-int-2017-sujet-projet_etude-isi-sic.pdf
cdg69-i-int-2017-sujet-projet_etude-isi-sic.pdf
 
10h20 orange agnes_ripoll_ghys
10h20 orange agnes_ripoll_ghys10h20 orange agnes_ripoll_ghys
10h20 orange agnes_ripoll_ghys
 
Cours_BD_M1-EAI-2023.pdf
Cours_BD_M1-EAI-2023.pdfCours_BD_M1-EAI-2023.pdf
Cours_BD_M1-EAI-2023.pdf
 

1144967.ppt

  • 1. Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse http://ekhalid.magix.net/public
  • 2. Plan du cours CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD I- Généralités 1- Historique 2- Pourquoi une BD ? 3- Qu’est-ce q’une base de données (BD et SGBD) II- Fonctions d’un SGBD III- Les différents niveaux de représentation d’une BD 1- Niveau externe 2- Niveau conceptuel 3- Niveau interne
  • 3. Plan du cours CHAPITRE II: La conception logique d’une BD I- Le modèle conceptuel ‘’Liens-Entités’’ II- Le modèle hiérarchique III- Le modèle relationnel IV- La méthode Merise 1- Modèle conceptuel de données (MCD) 2- Modèle logique de données (MLD) 3- Modèle physique de données (MPD) CHAPITRE II: Les langages de manipulation de donnée I- SQL Exercices d’application sur MS Access
  • 4. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD I. Généralités 1- Historique: * Données stockées sur bande magnétique sous forme d’enregistrement séquentiels pour constituer des Fichiers * Apparition des disques magnétiques: Accès plus rapide aux données et stockage d’une masse plus importante d’information  notion d’organisation de fichier et du système de gestion des fichiers * Avec le temps, les fichiers classiques pose un nombre de défaut et de contraintes. * De plus, dirigeants des entreprises deviennent de plus en plus exigeant: besoin d’exploiter d’une façon fine le système d’information par le biais de requête  naissance du concept des bases de données
  • 5. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Bande magnétique disques magnétiques: 8’’: 1970-1980 5.25": 1976 3.5" : créé par Sony en 1981
  • 6. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD I. Généralités 1- Historique (suite): * Milieu des années 60: naissance de la 1ère génération des SGBD basés sur des conception d’hiérarchie et de réseau * Début des années 70 : 2ème génération basées sur le modèle relationnel * Début des années 80 : naissance des SGBD répartis puis multimédia (images, voix …) * Actuellement on parle de base de données orientées objets.
  • 7. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD I. Généralités 2- Pourquoi une BD ? Exemple: Considérons une compagnie d’assurance vendant trois sortes d’assurances: Assurance vie, automobile et local) -La compagnie est organisée en trois département, chacun a ses propres fichiers (traitement traditionnel). L’information est utilisée pour réaliser certain travaux. Travail 1: gérer les assurances, Pour cela on a besoin : -d’un fichier F1 des assurés : Numéro, nom, prénom, date de naissance, sexe, adresse.. -des programmes d’applications: P1 calcul de prime P2  attestations P3  mise à jour
  • 8. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD I. Généralités 2- Pourquoi une BD ? Exemple (suite): Travail 2: gérer les sinistres, Pour cela on a besoin : -d’un fichier F2 des sinistres : Numéro, date du sinistre, lieu, détail du sinistre.. -des programmes d’applications: P4 Ajout d’un sinistre P5  mise à jour Travail 3: règlement des sinistres, Pour cela on a besoin : -des fichiers F1 et F2. -d’un programme d’applications: P6 calcul et production du règlement Chaque département a son propre système d’information semblable à celui-ci
  • 9. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Récapitulons: Département vie : Chaque département a son propre système d’information semblable à celui-ci F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5 Prime Attestation M-à-j
  • 10. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Problèmes avec l’utilisation des fichiers Problème 1: un adhérent X a souscrit l’assurance vie et auto. Son identifiant (nom, prénom, age, adresse…) va figurer dans deux fichiers Défaut 1: Redondance d’information  espace perdu F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5 Prime Attestation M-à-j
  • 11. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Problème 2: L’adhérent X déménage et envoie l’avis de changement d’adresse qui aboutit au département auto lequel met son fichier à jour mais ne transmet pas l’information au département vie Défaut 2: Redondance d’information  inconsistance d’information ou coût élevé de modification F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5 Prime Attestation M-à-j
  • 12. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Problèmes avec l’utilisation des fichiers Problème 3: un changement dans le calcul des primes exige une nouvelle donnée dans F1 (la profession par exemple). Les programmes P2 et P3 bien que non concernés par cette nouvelle information sont à corriger, de plus le fichier F1 est à refaire Défaut 3: les programmes sont dépendant des données F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5 Prime Attestation M-à-j
  • 13. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Problème 4: on veut savoir combien de femmes de 25 à 40 ans ont souscrit une assurance vie. Il faut alors écrire tout un programme pour le savoir Défaut 4: les données sont accessibles seulement à travers les programmes d’application F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5 Prime Attestation M-à-j
  • 14. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Problèmes avec l’utilisation des fichiers Problème 5: on veut savoir combien de personnes de sexe masculin ont souscrit une assurance vie, une assurance local, mais pas d’assurance auto. Pour cela il faut interroger les 3 fichiers F1, ce qui peut être complexe en raison de codage différent ou de contraintes périphériques. Défaut 5: les données dispersées créent de grandes difficultés pour le traitement d’ensemble. A la limite, le délai de réponse peut être très grand, ou encore les données inaccessibles.
  • 15. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD Récapitulatif  objectifs des BD Défauts avec les fichiers Objectifs des BD Redondance d’information Unicité de l’information Dépendance des données à l’égard des programmes Indépendance des programmes d’applications Données accessibles à travers les programmes d’applications Accès par : programmes et langages des requêtes Données dispersées et incohérentes Intégrité des données Chacun a ses propres fichiers Partage des données par plusieurs utilisateurs
  • 16. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD 3- Qu’est ce qu’une base de données ? Deux concepts sont à définir: une BD et un System de Gestion de BD (SGBD) Une BD est une collection de données, de différents types, interconnectées et sur lesquelles on peut développer plusieurs applications. Une BD est un ensemble de données structurées et inter reliées qui sont fiables, correctes, cohérentes et partageables par plusieurs utilisateurs ayant des besoins d’informations différents et cela sous le contrôle d’une autorité unique qui est l’administrateur de la BD (DBA) Un SGBD est un logiciel qui permet à un utilisateur d’interagir avec une BD (stocker, accéder, mettre à jour des données (Access, Oracle, SqlServer…)
  • 17. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD II. Fonctions d’un SGBD Un SGBD permet principalement d’organiser les données sur les supports, et fournit les procédures de manipulation de ces mêmes données (recherche, sélection, mise à jour..) Mais il a d’autres fonctions: 1. Description: le SGBD doit mettre à la disposition de l’utilisateur un outils pour décrire l’ensemble de données qui sont stockées dans la BD. Il y a différents niveaux de description de ces données: -description logique: perception de la BD par l’utilisateur -description physique: organisation des données sur les supports physiques La description se fait par un langage de définition de données (LDD) propre à chaque SGBD
  • 18. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD II. Fonctions d’un SGBD 2. Utilisation: offrir à l’utilisateur une interaction avec la BD (rechercher, sélectionner et modifier) . Il existe 2 façon pour interroger la BD: - par programmes d’application (informaticiens) - avec langage de requêtes (non informaticien) Cette utilisation se fait par un langage de manipulation de données (LMD) 3. Intégrité: offrir à l’utilisateur la possibilité de définir des règles qui permettent de maintenir l’intégrité de la BD (règles ou contraintes d’intégrité: propriétés qui devront être toujours vérifiées). Exemple: 0<Note<20 ou note = -1 (absent)
  • 19. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD II. Fonctions d’un SGBD 4. Confidentialité : puisqu’une BD est partagée par plusieurs utilisateurs, certains sous ensembles ne doivent être accessibles que par des personnes autorisées. Le SGBD doit offrir des mécanismes permettant de vérifier les droits d’accès des utilisateurs (mots de passe, rôle..) Exemple: ……. 5. Synchronisation d’accès ou concurrence d’accès : lorsque les programmes d’application accèdent aux même informations au même temps, le SGBD doit offrir les mécanismes pour détecter les cas où il y aurait conflit d’accès et de les traiter correctement (problème de lecture fantôme…)
  • 20. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD II. Fonctions d’un SGBD 6. Sécurité de fonctionnement : en cas d’incident provenant du matériel ou du logiciel, la BD n’est plus opérationnelle. Afin d’assurer le redémarrage du système après la pane, le SGBD doit rétablir la base dans un état cohérent (sur la base des fichiers journal et des sauvegardes à intervalles réguliers)
  • 21. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD III- Les différents niveaux de représentation d’une BD 1- Niveau externe 2- Niveau conceptuel 3- Niveau interne
  • 22. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD III- Les différents niveaux de représentation d’une BD Schéma externe 1 Schéma conceptuel Schéma externe 1 Schéma externe 1 Schéma physique BD physique Monde réel Procéssus de modélisation Niveau Externe Niveau Conceptuel Niveau interne Groupes d’utilisateurs
  • 23. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD III- Les différents niveaux de représentation d’une BD 1- Le niveau externe est l’ensemble des schémas externes des différents groupes d’utilisateurs. Le schéma externe est la vision d’une partie du schéma conceptuel par un groupe d’utilisateurs Exemple: Le service vente n’a pas besoin d’avoir une vision globale sur toute la base, il peut se limiter à la partie qui englobe les commandes, fournisseurs et produits
  • 24. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD III- Les différents niveaux de représentation d’une BD 2- Le niveau conceptuel: Le schéma conceptuel est la partie fondamentale dans l’architecture d’un système de BD. Il correspond à la sémantique (liens logiques) des données de l’entreprise Il représente les objets du monde réel (classe d’objets) et les associations entre eux Exemple: X Y . Z I.A I.E . T Etudiants Cycles Inscription (lien logique)
  • 25. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD III- Les différents niveaux de représentation d’une BD Le processus de modélisation se fait à l’aide d’un modèle de données. Un modèle de données est un outil formel (ensemble de concepts et de règle) utilisés pour représenter l’organisation logique des donnes On distingue essentiellement entre trois modèles principaux: - Le modèle hiérarchique - Le modèle réseau - Le modèle relationnel
  • 26. CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD III- Les différents niveaux de représentation d’une BD 3- Le niveau interne: Le schéma physique a pour but de spécifier comment les donnée seront stockées sur les support (noms de fichiers, organisation, localisation, enregistrements, chemin d’accès…)
  • 27. Schéma externe 1 Schéma conceptuel Schéma externe 1 Schéma externe 1 Schéma physique BD physique Monde réel Procéssus de modélisation Niveau Externe Niveau Conceptuel Niveau interne Groupes d’utilisateurs
  • 28. CHAPITRE II: LA CONCEPTION LOGIQUE D’UNE BD La conception logique d’une BD consiste à définir : 1- les types de données élémentaires (attributs) : nom client, adresse… 2- les types de données composées qui permettent de regrouper les attributs afin de décrire les entités du monde réel: Client, étudiant, voiture, … 3- les types de données composées qui permettent de regrouper les attributs afin de décrire les association du monde réel : inscription, propriétaire, locataire,… 4- Éventuellement, des règles que devrons suivre les données au cours de leurs existence dans le système Représentation Modèle standard : Liens-Entités
  • 29. 1- Le Modèle Conceptuel « LIENS-ENTITES » Définitions : Attribut: c’est la plus petite abstraction au niveau de l’entreprise qui a une signification pour l’utilisateur (Nom Client, CIN, Prix, …)  attribut = propriété Lien : c’est une association entre des objets. Un lien n’est pas une règle générale mais il traduit une contrainte de l’entreprise
  • 30. 1- Le Modèle Conceptuel « LIENS-ENTITES » Les 4 types de liens : 1- Lien hiérarhique de type (1 : N): Soit A et B deux ensemble d’objets. On a un lien hiérarchique de type (1 : N) de A vers B, noté : A (1 : N) B , si une occurrence de A permet de déterminer 0, 1 ou plusieurs occurrences de B et si à une occurrence de B correspond au plus une occurrence de A Exemple: S1 S2 . Sn E1 E2 . Ep A: Service B: Employé
  • 31. 1- Le Modèle Conceptuel « LIENS-ENTITES » Les 4 types de liens : 2- Lien maillé de type (N : M): Soit A et B deux ensemble d’objets. On a un lien maillé de type (N : M) de A vers B, noté : A (N : M) B , si l’on n’a aucune restriction sur le nombre d’occurrences de A et de B (c.à.d à une occurrence de A correspond 0, 1 ou plusieurs occurrences de B et inversement) Exemple: F1 F2 . Fn P1 P2 . Pi A: Fournisseur B: Produit
  • 32. 1- Le Modèle Conceptuel « LIENS-ENTITES » Les 4 types de liens : 3- Lien fonctionnel de type (N : 1): Soit A et B deux sous ensemble d’objets. On a un lien fonctionnel de type (N : 1) de A vers B, noté : A (N : 1) B , si toute occurrence de A détermine au plus une occurrence de B et si à une occurrence de B peut correspondre 0, 1 ou plusieurs occurrences de A (B est dite déterminée par A) Exemple: Etudiant (N°Etudiant, Nom, Clase) A = {N°Etudiant} B = {Nom, Clase} A (N : 1) B Quand on connaît N°Etudiant on peut connaître son nom et sa classe, alors que l’inverse n’est pas vrai.
  • 33. 1- Le Modèle Conceptuel « LIENS-ENTITES » Les 4 types de liens : 4- Lien particulier de type (1 : 1): Un lien particulier de type (1 : 1) noté : A (1 : 1) B , correspond à ce qu’une occurrence de A détermine au plus une occurrence de B et inversement. Exemple: Pays Capitale Remarques: Les liens hiérarchiques (1:N) et les liens maillés (N:M) sont des liens inter-entités Les liens foncionnels sont des liens intra-entités
  • 34. 1- Le Modèle Conceptuel « LIENS-ENTITES » Notion d’entité : Entité = Ensemble d’Attributs + Liens fonctionnels Entité : Ensemble d’attributs liés fonctionnellement, qui représentent une abstraction d’une partie de l’entreprise, qui a un nom et dont on peut identifier chaque occurrence Exemple: Entité client, entité étudiant, entité produit On distingue 2 types d’entités a- les entités statiques (autonomes) Entités dont l’existence ne dépend pas des attributs d’une autre entité Exemple: Fournisseur, Client, ..
  • 35. 1- Le Modèle Conceptuel « LIENS-ENTITES » b- les entités dynamiques Entités dont l’existence est liée à des attributs d’une ou plusieurs entités statiques Elles n’ont un sens que comme résultat de l’association entre certaines entités statiques. Une entité dynamique peut être porteuse ou non porteuse d’information Exemple 1 : Client( N°Client, Nom, Adresse) Article( N°Article, Désignation, Prix) Article-Cde( N°Article, N°Client , QtéCommandée, DateCde) Exemple 2 : Personne( N°CIN, Nom, Adresse) Voiture( N°Voiture, Marque, Couleur, …) Propriété( N°CIN, N°Voiture)
  • 36. 1- Le Modèle Conceptuel « LIENS-ENTITES » Remarques: - Toute entité doit avoir un nom qui la distingue des autres - Chaque élément d’une entité est appelé une occurrence - Chaque occurrence d’une entité est distincte des autres - Chaque entité possède au moins un identifiant constitué d’un ou plusieurs attributs qu’on appelle clé. Exemple d’illustration: entité clé attribut Abonné( N°Abonné, Nom, Adresse) valeur de l’attribut N°Abonné ( 123, Slimani, Rabat ) occurrence
  • 37. 2- Le Modèle Hiérarchique 1- Définitions : Un modèle de données hiérarchique : est un ensemble de définitions d’arborescence Une définition d’arborescence : est un diagramme de données dans lequel chaque entité, sauf la racine, a un seul arc incident de type (1:N) et 0, 1 ou plusieurs arcs émergeant de type (1:N). Exemple d’une définition d’arborescence : Département Division Employé Projet
  • 38. 2- Le Modèle Hiérarchique Exemple d’un modèle qui n’est pas hiérarchique : Professeur Cours Salle Étudiant Cycle
  • 39. 2- Le Modèle Hiérarchique le modèle hiérarchique correspondant est constitué de 2 définitions d’arborescence : Professeur Cours Salle Étudiant Cours Étudiant Cycle 1ère définition d’arborescence 1éme définition d’arborescence
  • 40. 2- Le Modèle Hiérarchique 1- Définitions (suite) : Une base de données hiérarchique : est un ensemble d’occurrence de définitions d’arborescence Exemple : soit le modèle suivant Division Service N°Service N°Division S1 S2 S3 S4 S5 S6 D1 D1 D2 D3 D3 D3 Le modèle correspondant est :
  • 41. 2- Le Modèle Hiérarchique 2- Caractéristiques du modèle : a- La relation Parent-Enfant : une occurrence d’entité d’un niveau i est dite parent, si elle est associée avec au moins une occurrence d’entité de niveau i+1 Exemple : soit le modèle hiérarchique suivant Département Division Employé Projet Enfant Niveau 0 Niveau 1 Niveau 2 Niveau 3
  • 42. 2- Le Modèle Hiérarchique 2- Caractéristiques du modèle : b- Élimination des occurrences d’entités : une occurrence d’une entité doit être reliée à une occurrence Parent et ainsi de nœud en nœud jusqu’à l’occurrence racine.  l’élimination d’une occurrence d’entité donnée provoque l’élimination de tous ses descendants c- Les liens maillés dans le modèle hiérarchique : Le modèle hiérarchique ne peut représenter directement un lien (N : M) entre deux entités. Solution : duplication des occurrences ou création d’une nouvelle entité permettant l’éclatement d’un lien (N : M) en deux lien (1 : N)
  • 43. 2- Le Modèle Hiérarchique Exemple : soit la structure suivante Fournisseur Produit Fournisseur Produit F1 F2 F3 F1 F2 F3 P1 P1 P2 P3 P4 P5 N : M Solution avec duplication des occurrences : Fournisseur Produit Fournisseur Produit Fournisseur Produit
  • 44. 2- Le Modèle Hiérarchique (suite …) Fournisseur Produit Fournisseur Produit F1 F2 F3 F1 F2 F3 P1 P1 P2 P3 P4 P5 N : M Solution par intégration d’une entité de lien : Fournisseur Produit Four/Prod Fournisseur Produit Four/Prod Four/Prod Pointeurs logiques Redondance au niveau logique uniquement
  • 45. 2- Le Modèle Hiérarchique 3- Les avantages du modèle : - Le modèle hiérarchique est conceptuellement simple à comprendre et à utiliser - Dans la réalité, plusieurs applications ne nécessitent que des relation de type (1 : N) 4- Les défauts du modèle : - Démonstration à travers l’exemple: Nom Dept Chef Dept Nbre employés Nom Service Chef service Num Emp Diplôme Date Recrut Salaire Département Service Employé
  • 46. 2- Le Modèle Hiérarchique a- Problème de suppression : - Un service devient inutile et on veut le supprimer de la base, sans toutefois supprimer les informations des employés de ce service (qu’on va réaffecter)  L’élimination de ce service entraîne l’élimination de tous ses descendants Nom Dept Chef Dept Nbre employés Nom Service Chef service Num Emp Diplôme Date Recrut Salaire Département Service Employé
  • 47. 2- Le Modèle Hiérarchique b- Problème d’insertion : - Supposons qu’on a recruté un nouvel employé et qu’on ne l’a pas encore affecté. Où mettrons nous les informations sur cet employé??  Impossible d’insérer une occurrence fils sans insérer les occurrences des différents parents hiérarchiques Nom Dept Chef Dept Nbre employés Nom Service Chef service Num Emp Diplôme Date Recrut Salaire Département Service Employé
  • 48. 2- Le Modèle Hiérarchique c- Problème de modification : - Supposons qu’une augmentation des salaires touches une catégorie particulière d’employés (licenciés par exemple). Le salaire doit être changé partout où apparaît le diplôme licence. Pour cela, il faut parcourir tous les département et pour chaque département passer par tous les services, puis tous les employés pour décider de l’augmentation  La modification entraîne un coût élevé, ou risque d’inconsistance Nom Dept Chef Dept Nbre employés Nom Service Chef service Num Emp Diplôme Date Recrut Salaire Département Service Employé
  • 49. 2- Le Modèle Hiérarchique d- Problème de recherche / consultation : - Il est facile de connaître les employés qui travaillent dans un département donné. Cependant, il est beaucoup plus compliqué de savoir dans quel département se trouve les employés ayant un salaire donné.  Coût élevé de recherche Nom Dept Chef Dept Nbre employés Nom Service Chef service Num Emp Diplôme Date Recrut Salaire Département Service Employé
  • 50. 2- Le Modèle Hiérarchique - Autres Problèmes : - La difficulté d’exprimer les relations (N : M). - nécessité d’espace de stockage important . - Impossibilité d’exprimer des parents multiples .
  • 51. 2- Le Modèle Relationnel Inventé par CODD en 1970. il repose sur des bases mathématiques et principalement sur le concept de relation … Département Division Employé Projet Département Division Employé Projet