Initiation aux bases de donn - PowerPoint PPT Presentation

About This Presentation
Title:

Initiation aux bases de donn

Description:

Client : nom, adresse, etc. Produit : nom du produit, description, prix unitaire, etc. ... Adresse. Produit. CP : Code produit. Nom produit. Description. Prix Unitaire. Quelle clef ... – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 16
Provided by: bernard48
Category:

less

Transcript and Presenter's Notes

Title: Initiation aux bases de donn


1
Initiation aux bases de données et à la
programmation événementielle
  • Cours N5
  • Schéma dune Base de Données

Support de cours de Souheib BAARIR. Page web
pagesperso-systeme.lip6.fr/Souheib.Baarir/bdvba/su
pport.htm E-mail souheib.baarir_at_u-paris10.fr
Université Paris Ouest Nanterre la
Défense. 2009-2010.
2
Introduction
  • Il ne suffit pas de de savoir écrire une requête
    en SQL pour
  • faire une BD.
  • Il faut dabord savoir
  • répartir les informations à mémoriser entre le
    différentes
  • tables et,
  • définir les liens logiques qui relient ces
    tables.
  • Autrement dit, savoir concevoir une Base de
    Données
  • définir un schéma de BD.

3
De linformation à la BD
  • Une information est complexe
  • on peut la décomposer en éléments (informations
    élémentaires),
  • un élément est une donnée.
  • Une donnée est décrite par un champ dune table.
  • Les données sont réparties en ensembles,
  • chaque ensemble décrit un sens commun,
  • il décrit donc un même concept.
  • ?Finalement, une table est la réalisation
    dun concept.
  • Les concepts ne sont pas indépendants,
  • ensemble, ils permettent de restituer
    linformation complexe,
  • ils sont donc reliés par des liens sémantiques.
  • ? Réalisé au travers des liens logiques, qui
    dépendent du choix de
  • gestion à mettre en place (1-N) ou
    (N-N).

4
Un premier exemple
  • On veut enregistrer des informations sur des
    écrivains et leurs
  • Å“uvres.
  • Que faut-il définir ?
  • un seul concept (lÅ“uvre et son auteur),
  • ou bien,
  • deux concepts séparés.

5
Un premier exemple un seul concept
  • Décrire lauteur (nom, prénom, sexe, années de
    naissance et de décès) et
  • lÅ“uvre dans une table unique.
  • AuteurÅ’uvre (N AutÅ’v, nom, prénom, sexe,
    année N, année D, titre œuvre)
  • Les descriptions risquent dêtre redondantes
    et/ou incohérentes

N AutŒv Nom Prénom Sexe Année N Année D Titre œuvre
1 Hugo Victor Mr 1803 1885 Les travailleurs de la mer
2 Hugo Victor Mr 1804 1900 Les misérables
Incohérence
Redondance
Règle fondamentale une information (complexe ou
non) ne doit pas être mémorisée plusieurs fois.
6
Un premier exemple deux concepts
  • La description dun auteur est une information
    complexe et cohérente.
  • La description dune Å“uvre est une information
    complexe et cohérente.
  • Donc deux concepts séparés (deux tables), mais
    associés
  • Si le choix de gestion est,
  • à 1 occurrence dauteur correspondent N
    occurrences dœuvre,
  • à 1 occurrence dÅ“uvre ne correspond qu1 seule
    occurrence dauteur.
  • Alors,
  • ? cest une Association (1-N), appelée aussi,
    père/fils.
  • ? Un lien père/fils (père du côté 1 et fils du
    côté N).
  • ? Réalisé par le couple clef primaire (du père)
    / clef externe (du fils).

7
Un premier exemple représentation graphique du
schéma dune table
  • Plusieurs conventions possibles pour représenter
    le schéma dune table.
  • On représente une table par un rectangle.

8
Un premier exemple représentation graphique du
lien logique
  • Le lien logique est représenté par une flèche
    allant de la clef externe de la table fils à la
    clef primaire de la table père.

9
Un deuxième exemple (1/2)
  • BD pour la gestion des commandes dans une
    entreprise
  • un client passe une commande
  • une commande nest passée que par un seul client
  • la commande est constituée de plusieurs produits
  • un produit peut être présent sur plusieurs
    commandes.
  • Les concepts identifiés sans problème,
  • Client nom, adresse, etc.
  • Produit nom du produit, description, prix
    unitaire, etc.
  • Commande numéro, date, liste des produits
    commandés avec la quantité commandée pour chacun
    deux.

10
Un deuxième exemple (2/2)
  • Les concepts Client, Produit et Commande sont des
    tables.
  • Une association (1-N) entre Client et Commande.
  • ? un lien logique simple clef primaire/clef
    externe.
  • ? la table père Client.
  • ? la table fils Commande.
  • Une association (N-N) entre Commande et Produit.
  • ? Un lien logique simple (Clé primaire/Clé
    externe) ne peut pas décrire cette
    association.
  • ? Il faut donc  casser  cette association
    (N-N),
  • ? par deux associations (1-N),
  • ? par conséquent, ajouter une table
    intermédiaire

11
Un deuxième exemple représentation graphique
Quelle clef primaire pour cette table ?
12
Un deuxième exemple clef composée pour
Lien_Cde_Pdt
  • Si une occurrence de Produit ne peut être
    associée quune seule fois à
  • une occurrence de Commande,
  • ? Alors, clef composée des deux clefs externes.

13
Un deuxième exemple clef autonome pour
Lien_Cde_Pdt
  • Si une occurrence de Produit peut être associée
    plusieurs fois à une occurrence
  • de Commande,
  • Alors, on utilise une clef autonome.

14
Un deuxième exemple allons un peu plus
loin(1/2)
  • On veut ajouter la quantité commandée de chaque
    produit à notre BD.
  • Où placer le champ correspondant à la donnée
    Quantité commandée ?
  • ? La valeur de la quantité commandée dépend à la
    fois de la commande et du produit concerné.
  • ? Il faut placer le champ dans la table qui
    décrit lassociation entre Commande et Produits.

Règle pour placer un champ dans une table, il
faut quil dépende entièrement de sa clef
primaire.
15
Un deuxième exemple allons un peu plus
loin(2/2)
Write a Comment
User Comments (0)
About PowerShow.com