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/publ ic

Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

Embed Size (px)

Citation preview

Page 1: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 2: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 3: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 4: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 5: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD

Bande magnétique

disques magnétiques: 8’’: 1970-19805.25": 19763.5" : créé par Sony en 1981

Page 6: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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.

Page 7: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 8: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 9: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

F1F1

P1P1

P2P2

P3P3

PrimePrime

AttestationAttestation

M-à-jM-à-j

F2F2

P6P6

P4P4

P5P5

PrimePrime

AttestationAttestation

M-à-jM-à-j

Page 10: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

F1F1

P1P1

P2P2

P3P3

PrimePrime

AttestationAttestation

M-à-jM-à-j

F2F2

P6P6

P4P4

P5P5

PrimePrime

AttestationAttestation

M-à-jM-à-j

Page 11: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

F1F1

P1P1

P2P2

P3P3

PrimePrime

AttestationAttestation

M-à-jM-à-j

F2F2

P6P6

P4P4

P5P5

PrimePrime

AttestationAttestation

M-à-jM-à-j

Page 12: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

F1F1

P1P1

P2P2

P3P3

PrimePrime

AttestationAttestation

M-à-jM-à-j

F2F2

P6P6

P4P4

P5P5

PrimePrime

AttestationAttestation

M-à-jM-à-j

Page 13: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

F1F1

P1P1

P2P2

P3P3

PrimePrime

AttestationAttestation

M-à-jM-à-j

F2F2

P6P6

P4P4

P5P5

PrimePrime

AttestationAttestation

M-à-jM-à-j

Page 14: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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.

Page 15: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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 desprogrammes

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

Page 16: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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…)

Page 17: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 18: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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)

Page 19: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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…)

Page 20: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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)

Page 21: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 22: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD

III- Les différents niveaux de représentation d’une BD

Schéma externe 1Schéma

externe 1

Schéma conceptuel

Schéma conceptuel

Schéma externe 1Schéma

externe 1

Schéma externe 1Schéma

externe 1

Schéma physiqueSchéma physique

BD physique

BD physique

Monde réel

Procéssus de modélisation

Niveau Externe Niveau Conceptuel Niveau interne

Groupes d’utilisateurs

Page 23: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 24: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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:

XY.Z

I.AI.E.T

Etudiants Cycles

Inscription(lien logique)

Page 25: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 26: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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…)

Page 27: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

Schéma externe 1Schéma

externe 1

Schéma conceptuel

Schéma conceptuel

Schéma externe 1Schéma

externe 1

Schéma externe 1Schéma

externe 1

Schéma physiqueSchéma physique

BD physique

BD physique

Monde réel

Procéssus de modélisation

Niveau Externe Niveau Conceptuel Niveau interne

Groupes d’utilisateurs

Page 28: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 29: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 30: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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:

S1S2.

Sn

E1E2.

Ep

A: Service

B: Employé

Page 31: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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:

F1F2.

Fn

P1P2.

Pi

A: Fournisseur

B: Produit

Page 32: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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.

Page 33: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 34: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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, ..

Page 35: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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)

Page 36: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 37: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 38: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

2- Le Modèle Hiérarchique

Exemple d’un modèle qui n’est pas hiérarchique :

Professeur

Cours

Salle

Étudiant

Cycle

Page 39: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 40: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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 :

Page 41: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

Page 42: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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)

Page 43: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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

FournisseurProduit

Page 44: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

2- Le Modèle Hiérarchique

(suite …)

Fournisseur

Produit

Fournisseur ProduitF1

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

Page 45: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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é

Page 46: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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é

Page 47: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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é

Page 48: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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é

Page 49: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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é

Page 50: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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 .

Page 51: Pratique de Bases de Données M. Khalid EL HACHEMI Téléchargement cours + exemples : I.N.S.E.A 2008 - 2012 Adresse

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