Bases de Données Relationnelles

Embed Size (px)

DESCRIPTION

Bases de Données Relationnelles. Modélisation Conceptuelle (Chapitre 2) Partie 1: Concepts généraux. Modélisation des données et schémas. La modélisation est l’activité d’élaboration d’une représentation structurée de la réalité - PowerPoint PPT Presentation

Text of Bases de Données Relationnelles

  • Bases de Donnes RelationnellesModlisation Conceptuelle(Chapitre 2)

    Partie 1: Concepts gnraux

  • Modlisation des donnes et schmasLa modlisation est lactivit dlaboration dune reprsentation structure de la ralitUne BD est une reprsentation de la partie du monde rel qui intresse les utilisateurs / les applications.La modlisation des donnes est llaboration des structures de donnes pour les donnes qui seront enregistres dans une BD.La dfinition de ces structures est consigne dans le schma de la base de donnes.

  • Modlisation conceptuelleObjectif: reprsenter la ralit telle qu'elle est perue par les utilisateursLe processus de modlisation et la dfinition de son rsultat sous forme d'un schma conceptuel est appel conception de la base de donnesLa qualit de la conception de la BD est un facteur critique de russite

  • Modlisation conceptuelle: avantages Attention porte sur les applicationsIndpendante des technologies Portabilit LongvitOriente utilisateur ComprhensibilitSupport du dialogue concepteurs / utilisateursPermet la collaboration et la validation par les utilisateurs

  • Autres avantagesSpcifications formelles, non ambigus, proches de la vision utilisateurPuissance des concepts Support dinterfaces visuelles (lisibilit) Diagrammes de dfinition de donnes Manipulation de donnesFacilite les changes dinformations entre SGBD diffrents

  • Modle de donnes (rappel)Ensemble de : concepts permettant la description et la manipulation des donnes du monde rel rgles dutilisation de ces concepts Ces concepts dcrivent les aspects: Statiques: structure des donnesDynamiques: oprations sur les donnes+ contraintes explicites

  • Modles conceptuelsRespectent la trilogie de base objets liens propritsPermettent des reprsentations multiples

  • Conception dune BD : analysereconnaissancestructurationUne BD est une reprsentation de la partie de la ralit qui nous intresse.perceptionMonde rel

  • Conception dune BD : descriptiondescriptionJean est un homme jeune aux cheveux bruns. Il est mari avec Arlette, et est propritaire d'une Honda CRV.

  • Conception dune BD : phasesanalyse de la ralitpartiellesubjectiveinfidlereprsentation (modle)contenustructurerglesdynamiquedescription (langage de dfinition des donnes - LDD)

  • Structure perue du monde relJean possde une Honda CRV griseArlette, sa femme, est avec lui

  • Observations"Jean" , "Arlettedsignent des objets reconnus comme des Personnes "Honda CRVnom utilis pour dsigner une Voiture "Jean" Possde "Honda CRV" :exprime un lien entre une personne et une voiture ... est mari avec ... :exprime un lien entre une personne et une autre personne "grise": valeur pour la proprit couleur de la voiture "Jean": valeur pour la proprit prnom de la personne

  • Abstractiontype dobjet:Personneproprits:- nom, - ge, ...De la ralit perue la reprsentation:

    Faire abstraction des particularits permet de passer des objets aux types d'objets

  • Dfinition du schmaUn schma est une collection de typesLa bases de donnes contiendra les valeurs reprsentant les instances de ces types

  • Qualits pour modles conceptuels Compltude Description de tous phnomnes courants Fiabilit formellement dfini Orientation utilisateur comprhensible, clair, lisible Orthogonalitindpendance des concepts Implmentabilit traduisible en SGBD existant Compltement oprationnel capacits de manipulation des donnes

  • Quels modles conceptuels ?Idalement: tous les concepts utilesPratiquement: un nombre limitBase: objets + liens + proprits + multi-reprsentation + contraintes dintgrit

  • Modles conceptuels Entit-Association EA (ER: Entity-Relationship)UMLautresNB: les modle relationnel et certains modles orient objets sont des modles logique (objectif: implmentation)

  • Quelques termesClasse d'objets similairestudiantsINSTANCES ou OCCURRENCEStudiant:-nom-prnoms-date de naissance-section-anneTYPEType d'objetBase de donnesPOPULATIONSCHEMAUne perception du monde relAbstraction / DescriptionDiagramme

  • Bases de Donnes RelationnellesModlisation Conceptuelle(Chapitre 2)

    Partie 2: Le modle Entit-Association

  • Modle de type conceptuelBut: permettre la description conceptuelle des structures de donnes d'une applicationLes concepts de base (correspondent aux concepts dabstraction de la ralit): objetentit lienassociation (relationship) propritattribut+ la reprsentation multiple

  • Entits et types dentitsEntit: reprsentation dun objet du monde rel ayant une existence propre

    Type d'entit (TE): reprsentation d'un ensemble d'entits perues comme similaires et ayant les mmes caractristiquesPersonne

  • Associations et types dassociations Association: reprsentation d'un lien non orient entre plusieurs entits (qui jouent un rle dtermin)

    Type d'association (TA): reprsentation d'un ensemble d'associations ayant la mme smantique et dcrites par les mmes caractristiques achte = < 1 personne, 1 maison >PersonneMaisonachte

  • Population d'un TAPersonneMaisonachte

  • Rles achte = < 1 personne, 1 maison >ACHETEURACHETPersonneMaisonachteAssociation binaire: deux rles

  • Associations Ternaires achte = < 1 client, 1 produit, 1 fournisseur >3 rlesClientProduitachteFournisseur

  • Associations Cycliquesmari = < 1 personne, 1 personne > ?PersonneMari 2 rles (au moins) lient le mme type d'entitProblme: comment savoir dans un couple qui est le mari et qui est la femme ?< Dupont Dominique, Dupont Dominique >

  • Associations Cycliques: rles nommsmari = < 1 personne/FEMME, 1 personne/MARI > Solution: spcifier le rle de chaque entit pour supprimer les ambiguts?MARIFEMMEPersonneMari < Dupont Dominique / femme, Dupont Dominique / mari >

  • Associations CycliquesTernaires:Symtriques:

  • Cardinalit des rles Combien de voitures (minimum) une personne peut-elle avoir? Combien de voitures (maximum) une personne peut-elle avoir?PersonneVoiturePossde

  • Contraintes de cardinalitUne personne peut ne pas avoir de voiture, en avoir 1, 2, n (pas de contrainte)

    Contraintes sur les cardinalitsUne voiture a un et un seul propitaire

  • Population d'un TAPersonneMaisonachte0:n1:1

  • Valeurs et notations des cardinalitsMinimum Maximum

    01110n1nnm0 : n1 : 1PersonneVoiturePossde

  • AttributsDcrivent linformation (les proprits) conserver sur: un objet une association un attributnomprnomsalaireDate_mariagejourmoisanneDomaine [1,31]MARIFEMMEPersonneMari

  • Attributs simplessimple (atomique): non dcomposable Exemples: jour, prnom

    Feuilles de larbre des attributs: seuls les attributs simples portent des valeur

    Le domaine de valeurs est constitu de valeurs atomiquesEx.: jour - domaine de valeurs: {1, 2, ., 31}Domaines prdfinis standard, intervalles, numrs

  • Attributs complexescomplexe: dcompos en d'autres attributs Exemples: date (jour, mois, anne), adresse (rue, ville, code postal)

    Un attribut complexe ne porte pas de valeur propre (pas de domaine directement associ)

    La valeur d'un attribut complexe est la composition des valeurs de ses attributs composants.

    Un composant d'attribut complexe peut tre lui-mme un attribut complexe.

  • Attributs mono- ou multivalusmonovalu: une seule valeur par occurrence (cardinalit max=1)Exemples: date de naissance, numro AVS

    multivalu: plusieurs valeurs par occurence (cardinalit max>1).Exemples: prnoms, tlphonesUne valeur d'attribut multivalu est un ensemble (ou liste ou multi-ensemble) de valeurs, prises chacune dans le domaine de valeurs associ l'attribut.

  • Attributs obligatoires ou facultatifsobligatoire:une valeur au moins par occurrence (cardinalit min>=1).Exemples: nom, prnomsfacultatif: peut ne pas prendre de valeur (cardinalit min=0).Exemples: salaire, tlphonesLe caractre obligatoire ou facultatif est dtermin par les besoins de l'application: Si l'on accepte d'enregistrer une personne sans connatre sa date de naissance, alors l'attribut date-de-naissance sera facultatif; sinon, il sera obligatoire

  • Attributs: exemplesimpleobligatoiremonovalucomplexe, facultatif, multivalu de type ensembleEmployNo-emp nom prnoms CV postesdiplme anne intitul salaires date-dbut date-finmontant dateanne moislistesimple, obligatoire, multivalu de type liste

  • Identifiants de TE et TANecessit de pouvoir dsigner une entit (une association) de faon univoqueIdentifiant:Ensemble minimal d'attributs tel qu'il n'existe pas deux instances du TE (TA) o ces attributs aient la mme valeur

  • Identifiants du TE EmployEmployNo-emp nom prnoms CV postesdiplme anne intitul salaires date-dbut date-finmontant dateanne moisDeux identifiants de Employ: No-emp, nom+prnoms

  • Identifiant d'un TA: rles multivalusCas frquent: id.TA = ensemble des identifiants des TE lis EtudiantCoursContrleNo-carte nom note No-cours intitul

  • Identifiant d'un TA: attribut propreid.TA = attribut du TA No-client nom No-commande date quantit No-produit nomDeux identifiants pour Commande: 1) No-commande 2) Client.No-client + Produit.No-produit (il nexiste quune seule commande dun client donn pour un produit donn)

  • Identifiant d'un TA: id.TE +attribut propreUn client peut commander le mme produit plusieurs fois des dates diffrentes ClientProduitCommandeNo-client nom date quantit No-produit nomIdentifia