32
Système de Gestion de Bases de Données

Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Embed Size (px)

Citation preview

Page 1: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Système de Gestion de Bases de Données

Page 2: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Définitions Base de données : fichier ou ensemble

de fichiers permettant le stockage et l'accès à des informations structurées.

SGBD (Système de Gestion de Base de Données) : logiciel permettant de gérer une base de données (ex : Access)

Page 3: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Exemple simple en ExcelUn libraire gère des œuvres littéraires : Une œuvre est une création littéraire. Une œuvre a un auteur et est dans une édition (un livre). Une édition possède un ISBN unique, a un unique éditeur et

ne contient qu’une œuvre. On veut mémoriser pour chaque édition le nombre

d’exemplaires en stock.

Page 4: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Solution : des listes !Liste des œuvres

ISBN Titre Auteur Editeur Stocks

2.207.30089.7 Fondation 5 Denoël 10

2.221.09973.7 L'incident Jésus 2 Laffont 7

2.070.42167.8 Chrono-Minets 5 Gallimard 8

2.290.03567.X Frankenstein 1 J'ai Lu 12

2.070.36822.X 1984 3 Gallimard 5

Liste des auteurs

Code Nom Prénom

1 Shelley Mary W.

2 Herbert Franck

3 Orwell Georges

4 Bradbury Ray

5 Asimov Isaac

Page 5: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Que peut-on en faire ? Liste des œuvres par auteurs Gestion des stocks Liste des œuvres avec moins de 3

exemplaires en stock …

Page 6: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Exemple moins simple…Un libraire gère des œuvres littéraires : Une œuvre est une création littéraire Une œuvre a au moins un auteur et est dans une édition (un livre) Une édition possède un ISBN unique et a un unique éditeur. Elle

peut contenir plusieurs œuvres. On veut mémoriser pour chaque édition le nombre d’exemplaires

en stock et pour chaque exemplaire son état

Solution en excel : ARG !!

Page 7: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Méthode MeriseMéthode (française, 1978) formalisée,

complète, détaillée qui garantit (en principe !) une informatisation réussie.

Formalisée : utilisation d’outils logiques (graphes, règles)

Complète : de la décision d’informatisation à la mise en œuvre effective

Détaillée : de la technique d’interview jusqu’au commentaires des programmes

Page 8: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Conception d’une base de donnéesQuatre phases :1. Analyse du problème2. Modèle conceptuel des données (MCD)

3. Modèle logique des données (MLD)

4. Modèle physique (réalisation dans le SGBD)

Page 9: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

1. Analyse du problèmeAnalyse des besoins des utilisateurs :- Quels sont les données à traiter ?- Quels traitements à effectuer ?

Analyse de l’existant, interviews, étude des documents, mise en évidence des règles de gestion…

Page 10: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Modèle Conceptuel des Donnéesles entitésUne entité est la représentation d’un type d’objet ou d’un

concept conforme aux choix de gestion de l’entreprise (ex : l’entité Livre) ;Une occurrence d’une entité est une instance (un

représentant) de l’entité dans le monde réel (ex : le livre « Frankenstein ») ;

Une propriété (ou attribut) : donnée élémentaire qui caractérise une entité (ex : le titre du livre) ;

L’identifiant (la clé) : propriété unique qui caractérise chaque occurrence(ex : l’ISBN d’une édition)

Page 11: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

2. Modèle Conceptuel des Données

Quatre phases :1. Repérer les entités du problèmes2. Construire les entités, en choisissant leurs

propriétés3. Établir les relations entre les différentes

entités4. Trouver les cardinalités de chaque relation

Page 12: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

1. Repérer les entitésUn libraire gère des œuvres littéraires : Une œuvre est une création littéraire Une œuvre a au moins un auteur et est dans une édition

(un livre) Une édition possède un ISBN unique et a un unique

éditeur. Elle peut contenir plusieurs œuvres. On veut mémoriser pour chaque édition le nombre

d’exemplaires en stock et pour chaque exemplaire son état.

Page 13: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

1. Repérer les entitésUn libraire gère des œuvres littéraires : Une œuvre est une création littéraire Une œuvre a au moins un auteur et est dans une édition (un livre) Une édition possède un ISBN unique et a un unique éditeur. Elle

peut contenir plusieurs œuvres. On veut mémoriser pour chaque édition le nombre d’exemplaires

en stock et pour chaque exemplaire son état

Entités :

Œuvres, auteurs, éditions, éditeur, exemplaires.

Page 14: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Propriétés : éléments caractérisant une entité

Règles sur les propriétés (de bon sens…)1. Toute propriété est élémentaire2. Une propriété ne doit pas être « instable » ou « calculable »3. Toute entité doit posséder un identifiant (clé)4. Toute propriété dépend directement de l’identifiant5. Une propriété (y compris l’identifiant) ne dois pas dépendre

d’une propriété autre que l’identifiant

2. Choix des propriétés

Page 15: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

2. Choix des propriétésŒuvres

NoOeuvre

Titre

Editions

ISBN

Titre

Editeurs

NoEditeur

Nom

Exemplaires

Id_livre

Etat

Auteurs

NoAuteur

Nom

Prénom

Page 16: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

3. Choix des relations Une relation (ou association) est un lien entre

deux ou plusieurs entités (ex : une œuvre est écrite par un auteur)

Une occurrence d’une association est une instance de l’association dans le monde réel

(ex : Frankenstein est écrit par Mary W. Shelley).

Une relation peut posséder des propriétés.

Page 17: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

3. Choix des relationsŒuvres

NoOeuvre

Titre

Editions

ISBN

Titre

Editeurs

NoEditeur

Nom

Exemplaires

Id_livre

Etat

Auteurs

NoAuteur

Nom

Prénom

écrit

édition

édite

Stocks

Page 18: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

3. Choix des relationsAutre exemple : des clients passent des commandes.

Clients

Noclient

Nom

Adresse

Code postal

ville

Commandes

NoCommande

xxx

Produits

NoProduit

Libellé

Prix unitaire

Effectue

Contientquantité

Page 19: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

4. Trouver les cardinalitésLa cardinalité d’une entité par rapport à une relation

s’exprime sous forme d’un couple :(cardinalité minimale ; cardinalité maximale)

Cardinalité minimale : nombre minimal de fois où une occurrence de l’entité participe à une relation de ce type vaut 0 ou 1 en général.

Cardinalité maximale :nombre maximal de fois où une occurrence de l’entité participe à une relation de ce type vaut 0, 1 ou « n » (pour « plusieurs fois »)

Page 20: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

4. Trouver les cardinalitésŒuvres

NoOeuvre

Titre

Auteurs

NoAuteur

Nom

Prénom

écrit

Min1:Max1 Min2:Max2

Min1 : « étant donné un auteur, combien d’œuvres sont écrit par lui au minimum ? »

Max1 : « et au maximum ? »

Min2 : « et pour une œuvre, combien d’auteur participent à son écriture au minimum ? »

Max2 : « et au maximum ? »

Page 21: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

4. Trouver les cardinalités

Œuvres

NoOeuvre

Titre

Auteurs

NoAuteur

Nom

Prénom

écrit

1:n 1:n

Min1 : « étant donné un auteur, combien d’œuvres sont écrit par lui au minimum ? »

Max1 : « et au maximum ? »

Min2 : « et pour une œuvre, combien d’auteur participent à son écriture au minimum ? »

Max2 : « et au maximum ? »

Page 22: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Conseils Limiter la taille, factoriser si cela a du sens

(ex : plusieurs personnes habitent à la même adresse : faut-il ajouter une entité adresse ?)

Limiter les redondances !! (pas d’informations présente deux fois)

Page 23: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Construction d’un MCDFAQ (Frequently Asked Question) Cardinalité (0:n) ou (1:n) ?Répondre à « mon entité doit-elle obligatoirement apparaître dans

une relation de ce type ? ». En pratique peu d’importance… Les cardinalités sont toujours 0, 1 ou n ?En pratique, il peut y avoir d’autre valeurs, mais c’est très rare

(exemple du tiercé : un pari concerne exactement 3 chevaux cardinalité 3:3)

Est-ce une entité ou une relation ?Si une relation contient de nombreuses propriétés, envisagez une

entité… Puis-je utiliser des relations entre plus de deux entités ?Oui, mais à éviter… Exemple : Vendeurs, Lieux et Acheteurs reliés par

vente. N’est-ce pas plus clair avec une entité ActesDeVente ?

Page 24: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Exercice : réalisation de MCD

Une banque désire posséder un SGBD pour suivre ses clients. Elle désire ainsi stocker les coordonnées de chaque client (nom, prénom adresse), et les comptes dont elle dispose ainsi que leur solde (sachant par ailleurs que certains compte ont plusieurs bénéficiaires). On stockera également les opérations relatives à ces comptes (retrait et dépôt, avec leur date et le montant).

Page 25: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Exercice

Comptes

Code

Solde

Clients

NoClient

Nom

Prénom

Adresse

Opérations

Id_op

Type

Date

montant

bénéficie

Concerne

1:n 1:n 0:n

1:1

Page 26: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Modèle Logique des données(MLD) Plus proche du modèle physique. Ne contient que des tables qui possèdent

des propriétés et une ou plusieurs clés primaires.

Toutes les tables ont un nom unique.

Page 27: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Passage du MCD au MLDPour les entités. Toute entité devient une

table et conserve ses propriétés et sa clé.

Pour les associations. Dépend des cardinalités. Deux grand cas possibles :

Relation la relation est matérialisée par l’ajout d’une clé étrangère

Relationla relation donne lieu à la création d’une table

1:1 ?:?

?:n ?:n

Page 28: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Passage du MCD au MLDEntitéA

IdA

PropriétéA

EntitéB

IdB

propriétéB

TableA

IdA

PropriétéA

TableB

IdB

PropriétéB

RefA

PropriétéR

0:n 1:1relation

propriétéR

devient

Page 29: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Passage du MCD au MLDEntitéA

IdA

PropriétéA

EntitéB

IdB

propriétéB

TableA

IdA

PropriétéA

TableB

IdB

PropriétéB

0:n 1:nrelation

propriétéR

devient

RelationAB

RefA

RefB

PropriétéR

Page 30: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Passage du MCD au MLDcas particuliers

Une relation ternaire devient une table si les cardinalités sont 1:n sur toutes les branches, sinon on place les références dans la table reliée à une cardinalité 1:1

Si plusieurs relations existent entre deux entités, on les traite séparément

Les cardinalités k:k sont à traiter comme k relations 1:1 Si deux entités sont reliés par une relation de type

il faut probablement les fusionner en une table. Supprimer les tables inutiles ! (tables à un seul champ)

1:1 1:1

Page 31: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Passage du MCD au MLD : exercice

Œuvres

NoOeuvre

Titre

Editions

ISBN

Titre

Editeurs

NoEditeur

Nom

Exemplaires

Ref_livre

Etat

Auteurs

NoAuteur

Nom

Prénom

écrit

édition

édite

Stocks

1:n 1:n

1:n

1:n

1:1 1:n

1:10:n

Question : Trouvez le MLD équivalent…

Page 32: Système de Gestion de Bases de Données. Définitions Base de données : fichier ou ensemble de fichiers permettant le stockage et l'accès à des informations

Solution

Œuvres

NoOeuvre

Titre

Editions

ISBN

Titre

RefEditeur

Editeurs

NoEditeur

Nom

Exemplaires

Ref_livre

Etat

ISBN

Auteurs

NoAuteur

Nom

Prénom

Ecriture

RefOeuvre

RefAuteur

Liste_oeuvres

RefOeuvre

ISBN