0% ont trouvé ce document utile (0 vote)
39 vues58 pages

Modèle Logique: M Diahame

Le document présente les différents modèles logiques de bases de données, notamment le modèle hiérarchique, le modèle réseau et le modèle relationnel. Il explique les concepts fondamentaux du modèle relationnel, y compris les clés, les contraintes d'intégrité et les opérations de mise à jour. Enfin, il aborde la transformation des entités et associations du modèle conceptuel vers le modèle logique.

Transféré par

Khadim Sall
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
39 vues58 pages

Modèle Logique: M Diahame

Le document présente les différents modèles logiques de bases de données, notamment le modèle hiérarchique, le modèle réseau et le modèle relationnel. Il explique les concepts fondamentaux du modèle relationnel, y compris les clés, les contraintes d'intégrité et les opérations de mise à jour. Enfin, il aborde la transformation des entités et associations du modèle conceptuel vers le modèle logique.

Transféré par

Khadim Sall
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Modèle logique

Mr. Mamadou DIAHAME(1)


(1)ESP, Cheikh Anta Diop University, Dakar, Senegal
[email protected]

Module Base de Données

1 / 58
Les différents modèles au niveau logique

Le modèle hiérarchique
I Les données sont organisée selon une hiérarchie de propriété.

2 / 58
Les différents modèles au niveau logique

Le modèle hiérarchique : exemple 1

I Inconvénient : favorise la redondance des données.

3 / 58
Les différents modèles au niveau logique

Le modèle hiérarchique : exemple 2

I Inconvénient : impossibilité d’insérer au niveau fils sans une


incorporation préalable au niveau parent.

4 / 58
Les différents modèles au niveau logique

Modèle réseau

I Chaque entité à l’intérieur de la base de données est associée


par un système de pointeurs à d’autres entités
correspondantes.
I Inconvénient : l’utilisateur doit savoir bien naviguer dans la
base pour extraire les données.

5 / 58
Les différents modèles au niveau logique

Modèle réseau : exemple

6 / 58
Les différents modèles au niveau logique

Modèle relationnel

I Les éléments de la base sont représentés sous la forme de


tableaux reliés par des attributs communs.

7 / 58
Les différents modèles au niveau logique

Modèle relationnel : exemple

8 / 58
Concepts de base du modèle relationnel

Modèle relationnel : fondement

I Le modèle relationnel propose de percevoir les données sous


une forme simple de tables (relation).
I Il s’inspire directement de la notion mathématique de relation.
I La manipulation des donnés s’effectue à l’aide d’un ensemble
d’opérateurs algébrique (algèbre relationnel).

9 / 58
Concepts de base du modèle relationnel
Domaine, Tuples, Attributs et Relations

Relation

I Les données sont représentées sous la forme de collection de


relations (fichiers).
I Chaque relation est présentée par une TABLE de valeurs.
I Toutes les valeurs d’une même colonne sont toujours de même
type (appelé domaine de l’attribut)
I R peut être soit
I une entité (e.g. PERSONNE)
I soit une association (e.g. TRAVAILLER-POUR)

10 / 58
Concepts de base du modèle relationnel
Domaine, Tuples, Attributs et Relations

Relation : tuples et colonnes

11 / 58
Concepts de base du modèle relationnel
Domaine, Tuples, Attributs et Relations

Domaine

I Ensemble des valeurs atomiques que peut prendre un attribut.


Le domaine de Ai est noté Dom(Ai )

12 / 58
Concepts de base du modèle relationnel
Domaine, Tuples, Attributs et Relations

Schéma de relation (structure)

I Noté R(A1 , A2 , · · · , AN ) est un ensemble d’attributs


R = {A1 , A2 , · · · , AN } où N est le degré de la relation.
I Exemple : de schéma de relation Employe pour une relation de
degré 6 :
I Employe (Nom, Nss, Tel-pers, Adresse, Tel-bur, Age)

13 / 58
Concepts de base du modèle relationnel
Domaine, Tuples, Attributs et Relations

Instance de relation

I Une instance de relation r de R est un ensemble de n-tuples r


= {t1 , t2 , · · · , tm } qui existent dans la base de données à un
instant donné.
I Chaque n-tuple est constitué par une liste ordonnée de n
valeurs
I t = < v1 , v2 , · · · , vN >
I où ∀i, 1  i  n, vi ∈ dom(Ai ) ou vi = NULL

14 / 58
Concepts de base du modèle relationnel
Domaine, Tuples, Attributs et Relations

Exemples d’instance et de n-tuples correctes et non


correctes

15 / 58
Concepts de base du modèle relationnel
Notations utilisées

Un schéma de relation

I Un schéma de relation de degré n : R(A1 , A2 , · · · , AN )


I Un n-tuple t dans une relation r(R) : t = < v1 , v2 , · · · , vN >
ou vi est la valeur correspondante à l’attribut Ai .
I T [Ai ] = valeur vi dans le tuple pour l’attribut Ai.
I T [Au , Ay ] = sous ensemble de valeurs < vu , vy > de t
correspondant aux attributs spécifiés.

16 / 58
Concepts de base du modèle relationnel
Notations utilisées

Le nom d’une relation

I Le nom d’une relation peut désigner le schéma de la relation


ou l’instance courante de la relation.
I Les lettres Q, R, S désignent des noms de relations, les lettres
q, r, s désignent des instances de relations.
I Pour désigner l’attribut d’une relation on peut avoir recours à
la notation R.Ai (ex : ETUDIANT.Nom)

17 / 58
Concepts de base du modèle relationnel
Attributs clés d’une Relation

Super-clé

I Une relation est un ensemble de tuples et les tuples sont


distincts
I Soit SC un sous ensemble d’attributs d’une relation, Si
∀i, j : ti [SC ] 6= tj [SC ] alors SC est appelé une Super-Clé de R.
I Chaque relation possède au moins une super-clé (ensemble de
tous les attributs de cette relation).
I Exemple : R=ETUDIANT (Nss, Nom, Age, Adresse, Tel),
{Nss, Nom, Age} est une super-clé.

18 / 58
Concepts de base du modèle relationnel
Attributs clés d’une Relation

Clés candidates

I Tout schéma de relation R possède obligatoirement une Clé et


R peut avoir plusieurs clés (Clés candidates).
I Une Clé C d’un schéma de relation R est une
Super-Clé-minimale de R.
I Exemple : R=ETUDIANT (Nss, Nom, Age, Adresse, Tel),
{Nss} est une clé.

19 / 58
Concepts de base du modèle relationnel
Attributs clés d’une Relation

Clé primaire

I L’une des clés candidates sera choisie pour identifier les tuples
(Clé Primaire)
I Exemple : R=Notation (Matricule-Etudiant, Code-Module,
DS, CC)
I Par convention, une clé primaire est soulignée.

20 / 58
Schéma d’une Base de données relationnelle
Schéma et instance d’une BBR

Un schéma de BD relationnelle

I Un schéma de BD relationnelle est


I un ensemble de schémas de relations S= {R1 , R2 , · · · , RM }
I et un ensemble de contraintes d’intégrité CI.

21 / 58
Schéma d’une Base de données relationnelle
Schéma et instance d’une BBR

Une instance de BD relationnelle

I Une instance de BD relationnelle est un ensemble d’instances


de relations {r1 , r2 , · · · , rM }
I tel que chaque ri est une instance de Ri
I et que tous les Ri satisfont les contraintes d’intégrité
spécifiées dans CI.

22 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Contraintes d’intégrité

I les contraintes d’intégrité sont toujours spécifiées sur un


schéma relationnel mais doivent être vérifiées pour toute
instance particulière de ce schéma.
I Il existe 3 types de contraintes d’intégrité

23 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Les contraintes de clé

I permettent de spécifier les clés candidates de chaque schéma


de relation.
I Les valeurs des clés candidates doivent être distinctes pour
chaque tuple dans toute instance de relation.

24 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Les CI sur les entités

I elles ont pour but d’interdire une valeur nulle pour une Clé
Primaire → éviter toute ambiguïté d’identification de 2
tuples.

25 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Les CI référentielles

I s’appliquent entre deux relations afin de maintenir une


certaine cohérence parmi les tuples des deux relations.

26 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Notion de clé étrangère

I soit 2 schémas de relations R1 et R2.


I Un ensemble d’attributs FK de R1 est une clé étrangère s’il
remplit les conditions suivantes 1
1. Les attributs constituant FK ont le même domaine que les
attributs référencés dans R2 (R1 et R2 peuvent ne pas être
distinctes)
2. Une contrainte d’unicité ou de clé primaire s’applique sur les
colonnes référencées dans la relation R2.
3. Une valeur de FK dans un tuple t1 de R1 est soit identique à
une valeur de C dans un tuple t2 de R2 soit nulle.

1. Les conditions 1 et 2 concernent la structure des données(i.e. la définition


des données) tandis que la 3 est relative aux données(i.e. à la manipulation des
données
27 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Représentation d’un clé étrangère

I Les CI référentielles peuvent être représentées graphiquement


sur tout schéma relationnel en reliant par un arc chaque clé
étrangère à la relation à laquelle elle fait référence.
I Les CI référentielles peuvent aussi être représentées
directement dans la relation en faisant suivre l’attribut qui fait
référence par un signe dièse.

28 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Un schéma de BD relationnelle : exemple

29 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Opérations de base pour la mise à jour des relations

1. INSERER : pour l’ajout de nouveaux tuples dans une relation.


2. SUPPRIMER : pour la suppression de tuples dans une relation.
3. MODIFIER : pour la modification de certaines valeurs
d’attributs d’un tuple.

30 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

Vérification contraintes

I À chaque fois que l’une des opérations ci-dessus est effectuée


il faut s’assurer que les trois types de contraintes présentées
précédemment ne sont pas violées.
I Les contraintes de clé
I Les CI sur les entités
I Les CI référentielles

31 / 58
Schéma d’une Base de données relationnelle
Contraintes d’intégrité

TD

I TD : section MLD

32 / 58
Du conceptuel au logique

Traduction MCD vers MLD

33 / 58
Du conceptuel au logique
Transformation des entités

R1 : définition

I chaque entité devient une relation. L’identifiant de l’entité


devient clé primaire de la relation.
I Pour les entités de type date il n’y a pas lieu de définir de
relation dans la règle R1 2

2. Cela constitue une exception à la règle R1.


34 / 58
Du conceptuel au logique
Transformation des entités

R1 : exemple

35 / 58
Du conceptuel au logique
Transformation des associations binaire 1-N

R2 : définition

I Il faut ajouter un attribut de type clé étrangère dans la


relation fils de l’association. L’attribut porte le nom de la clé
primaire de la relation père de l’association.

36 / 58
Du conceptuel au logique
Transformation des associations binaire 1-N

R2 : exemple

37 / 58
Du conceptuel au logique
Transformation des association binaire N-N et associations n- aires

R3 : définition

I L’association devient une relation.


I La clé primaire de cette relation est la concaténation des
identifiants des entités connectés à l’association.
I Chaque attribut devient clé étrangère si l’entité connectée
dont il provient devient une relation en vertu de la règle R1.
I Les attributs de l’association doivent être rajoutés à la
nouvelle relation.
I Ces attributs ne sont ni clé primaire, ni clé étrangère

38 / 58
Du conceptuel au logique
Transformation des association binaire N-N et associations n- aires

R3 : exemple (a)

39 / 58
Du conceptuel au logique
Transformation des association binaire N-N et associations n- aires

R3 : exemple (b)

40 / 58
Du conceptuel au logique
Transformation des association 1-1

R4 : définition

I Il faut ajouter un attribut de type clé étrangère dans la


relation dérivée de l’entité ayant la cardinalité minimale 1.

41 / 58
Du conceptuel au logique
Transformation des association 1-1

R4 : exemple

42 / 58
Du conceptuel au logique
Transformation des association 1-1

TD

I TD : section Du MCD au MLD

43 / 58
L’algèbre relationnel

Les catégories d’opérations

I Opérations reposant sur la théorie des ensembles :


1. Union (n-aire)
2. Intersection (n-aire)
3. Différence (binaire)
4. Produit cartésien (binaire)
I Opérations spécifiques aux BD relationnelles :
1. Sélection (un-aire)
2. Projection (un-aire)
3. Jointure (binaire)

44 / 58
L’algèbre relationnel
La sélection

La sélection : définition

I Le but de la sélection est de sélectionner un sous-ensemble de


tuples d’une relation sur la base d’une condition de sélection.
I Exemple : liste des employés qui travaillent dans le
département 4 et dont le salaire est supérieur à 3000 F.
I Le résultat obtenu est une relation qui possède les mêmes
attributs que la relation d’origine.

45 / 58
L’algèbre relationnel
La sélection

Spécification des conditions de sélection

I Les opérateurs de comparaison sont :


I =, 6=, ≺, , ,  et s’appliquent sur des valeurs ordonnées de
domaine (numérique, date, alphabétique, alphanumérique
(code ASCII))
I pour des valeurs non ordonnées tels que ensemble de couleurs
seuls = et 6= peuvent être utilisés
I Liaisons entre les clauses : AND, OR, NOT.

46 / 58
L’algèbre relationnel
La sélection

La sélection : exemple avec Ville = Caen et CH_AFF


 10.000

47 / 58
L’algèbre relationnel
La projection

La projection

I Le but de la projection est de sélectionner un sous-ensemble


d’attributs d’une relation en spécifiant d’une façon explicite
les attributs désirés.
I Exemple : lister le nom et le salaire de tous les employés.
I L’opération de projection élimine automatiquement les
duplications de tuples.

48 / 58
L’algèbre relationnel
La projection

La projection : exemple

49 / 58
L’algèbre relationnel
La jointure

La jointure

I Le but de la jointure est de combiner des tuples de deux


relations en un seul tuple en recherchant dans une relation R1
le tuple possédant une valeur d’attribut égale (ou
correspondant) à une autre valeur d’attribut (e.g. clé
étrangère) d’un tuple de relation R2.

50 / 58
L’algèbre relationnel
La jointure

Spécification des conditions de jointure

I Le critère de comparaison doit porter sur des attributs ayant


le même domaine.
I Exemple : rechercher le nom du directeur de chaque
département.
I Les opérateurs de jointure sont : =, 6=, ≺, , , 
I On parle d’équi-jointure si l’opérateur utilisé est ’=’ =⇒ il y a
un ou plusieurs paires d’attributs ayant la même valeur

51 / 58
L’algèbre relationnel
La jointure

La jointure : exemple

52 / 58
L’algèbre relationnel
La jointure

Produit cartésien

I S’il n’existe pas une condition de jointure, il s’agit d’un


produit cartésien et toutes les combinaisons de tuples sont
retenues dans la relation résultante.

53 / 58
L’algèbre relationnel
Opérations basées sur la théorie des ensembles

Union et Intersection

I le résultat d’une union entre deux relations R et S est une


relation qui contient tous les tuples qui sont dans R ou dans S
ou dans R et S (doublons).
I le résultat d’une intersection entre deux relations R et S est
une relation qui contient tous les tuples qui sont à la fois dans
R et dans S.

54 / 58
L’algèbre relationnel
Opérations basées sur la théorie des ensembles

Union et Intersection : exemples

55 / 58
L’algèbre relationnel
Opérations basées sur la théorie des ensembles

Différence

I le résultat d’une opération de différence entre deux relations R


et S est une relation qui contient tous les tuples de R qui ne
sont pas dans S.

56 / 58
L’algèbre relationnel
Opérations basées sur la théorie des ensembles

TD

I TD : Algèbre

57 / 58
Fin
58 / 58

Vous aimerez peut-être aussi