Cours de Bases de données

Documents pareils
A. Définition et formalisme

Conception des bases de données : Modèle Entité-Association

Cours de bases de données. Philippe Rigaux

Modélisation de bases de données : Le modèle relationnel

Introduction aux Bases de Données

RÈGLES DE TRANSFORMATION DU MCD AU MLD (MRD)

Rappel sur les bases de données

Modèle conceptuel : diagramme entité-association

Modélisation des données

II. Modèle conceptuel le modèle entité-association

Bases de données. Chapitre 1. Introduction

LES SYSTEMES DE GESTION DE BASES DE DONNEES

Modèle Entité-Association. C est un modèle important pour la conception des bases de données relationnelles. Il

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

2 Grad Info Soir Langage C++ Juin Projet BANQUE

Modélisation conceptuelle des données Responsable: Dominique Schneuwly, Regis Caloz

LE MODELE CONCEPTUEL DE DONNEES

Comprendre Merise et la modélisation des données

Modélisation Conceptuelle. Partie 2: Le modèle Entité-Association

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

MASTER II ECONOMIE ET GESTION Spécialité Management des Organisations de la Neteconomie

Le niveau conceptuel : la modélisation des bases de données

INFO 364 : Bases de Données Projet Professeur : Esteban Zimányi Assistants : Pierre Stadnik et Mohammed Minout Année Académique :

MERISE. Modélisation de Systèmes d Information. Pierre Gérard. DUT Informatique 2ème année 2004/2005. IUT de Villetaneuse - Université de Paris 13

Conception d une base de données

Le modäle conceptuel de donnåes (MCD)

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

PROPOSITION DE CONTRAT CONCERNANT LA MISE EN PLACE D UN SYSTEME DE MICRO-CREDIT AU VILLAGE DE ZIGLA KOULPELE

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Réalisation d une première base de données (Tutoriel - version 4.2 ; 19 septembre 2014)

GUIDE DU CAHIER DES CHARGES

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Dossier de candidature

Chapitre 4 : les stocks

GOL502 Industries de services

LA PROCEDURE D'EVALUATION A.NA.PSY.p.e. EST LE RESULTAT D'UNE RECHERCHE

LE PROBLEME DU PLUS COURT CHEMIN

Exo7. Limites de fonctions. 1 Théorie. 2 Calculs

La méthode MERISE (Principes)

AVIS DE MARCHE. Nom et adresse officiels de l'organisme acheteur : MAIRIE DE CUGNAUX

Chapitre 2. Classes et objets

Systèmes d information et bases de données (niveau 1)

Chap. 3: Le modèle de données entité-association (E.A.)

P.S.E. 1 ère situation d évaluation

Utiliser un tableau à double entrée «Les véhicules»

CHARTE BUDGET PARTICIPATIF

Méthode d analyse Merise

ÉCOLE DES BEAUX ARTS DEMANDE D ADMISSIBILITÉ POUR L ANNÉE 2015/2016

UML (Diagramme de classes) Unified Modeling Language

PREAVIS DE LA MUNICIPALITE AU CONSEIL COMMUNAL

Gé nié Logiciél Livré Blanc

MODELE D AVIS D APPEL PUBLIC A LA CONCURRENCE

REPERTOIRE DES INTERPRETATIONS DE LA CCT DU SECTEUR SANITAIRE PARAPUBLIC VAUDOIS ETAT au

Analyse des Besoins (Spécifications)

Fiche mathématiques financières

Bases de Données. Plan

GEST_INSTANCES APPLICATION DE GESTION DES INSTANCES ET REUNIONS EN EPLE ETABLISSEMENT PUBLIC LOCAL D ENSEIGNEMENT

UNIVERSITE D'ORLEANS ISSOUDUN CHATEAUROUX

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

Fédération Nationale des Organismes de Gestion des Établissements de l Enseignement Catholique Questions Réponses Le mandat

POLITIQUE DE DANAHER CORPORATION EN MATIERE DE LUTTE CONTRE LA CORRUPTION

Jeux de caracte res et encodage (par Michel Michaud 2014)

CQP ADMINISTRATEUR DE BASES DE DONNÉES (ABD)

Renaissance Nancy 2013

CADRE D AGRÉMENT APPROCHE STANDARD DU RISQUE OPÉRATIONNEL

Modèle Entité/Association

REGLEMENT DU CONCOURS MACIF «PRIX MACIF DU FILM ECONOMIE SOCIALE»

Décision 04/77/ILR du 6 juillet 2004

CAHIER DES CHARGES DES MOYENS INFORMATIQUES Introduction

Calculabilité Cours 3 : Problèmes non-calculables.

Opérations de prêts de titres et opérations de cession-rétrocession de titres

Base de Données et Langage SQL

!!" # $ % & ' ( ) # * ( + # # $ (, $ - (. / -- 0 # # # $ 3 - ( 4 *4-5. & ) * 5

Cours 1 : introduction

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Plus courts chemins, programmation dynamique

UE 4 Comptabilité et Audit. Le programme

Gestion des bases de données (1 ère partie)

UFR d Informatique. FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE

AVIS DE MARCHÉ SERVICES

GUIDE D UTILISATION DE L AGENDA

I4 : Bases de Données

Tickets 3:3. ChevauxPartants

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

PROPOSITION D ETUDE ETUDE DU MARCHE BELGE DES SEMINAIRES ET CONFERENCES

1 La société GIR. 2 La solution proposée

Trois entités forment notre groupe : Découvrez notre univers et rejoignez-nous. PARTN AIR GROUP 10 route des flandres St Martin Longueau

Propriétés des options sur actions

Charte européenne pour la qualité des stages et des apprentissages

Les intérêts des comptes courants d associés Novembre 2013

Projet de raccordement au réseau de transport de gaz naturel EXPRESSION PRELIMINAIRE DE BESOIN SITE :..

Personnalisation Fiche Annuaire

DGE-5254-VF (14-03) Se porter candidat aux élections scolaires

Version Télé-services. Fil Conducteur- responsables. Les manipulations

Transcription:

Institut National de Statistique et d Economie Appliquée Cours de Bases de données 1 er année, Filière Informatique 2016/2017 Pr. Imade BENELALLAM i.benelallam@insea.ac.m a www.benelallam.org Cours de Bases de données 1

Chapitre 2 Le modèle abstrait des bases de données Cours de Bases de données 2

Introduction : modélisation des données Ce chapitre présente le modèle Entité/Association (E/A) qui est utilisé à peu près universellement pour la conception de bases de données (relationnelles principalement). Le modèle E/A a pour caractéristiques d être simple et suffisamment puissant pour représenter des structures relationnelles Cours de Bases de données 3

Problèmes d une conception sans précautions Si l on modifie l année de naissance d Hitchcock pour Vertigo... Si destruction d un film, on risque de supprimer le metteur en scène Cours de Bases de données 4

Introduction : modélisation des données La réalisation d une Base de Données implique trois grandes étapes : La définition d un cahier des charges La modélisation L implantation physique dans un système informatique. Cours de Bases de données 5

Cours de Bases de données 6

Introduction : modélisation des données Définition : (Modèle des données) Un modèle des données («data model») est une description formelle et structurée des données et de leurs relations dans un système d information. Pour obtenir un modèle des données, il faut trois grandes phases : Modélisation / analyse des données Construction d un modèle entité-association Conversion en un schéma de bases de données relationnelles. La méthode de conception permet de distinguer les entités qui constituent la base de données, et les associations entre ces entités. Cours de Bases de données 7

Entité Une entité est un élément existant (objet concret ou abstrait) ou un concept distinguable; Exemple : une personne, une voiture, un livre... Un ensemble d'entités contient des entités similaires, mais distinguables deux à deux. Les entités ont un nom et des propriétés (permettant de les distinguer) appelées attributs. Chaque attribut associe à une entité une valeur dans un domaine (entiers, réels, chaînes de caractères...) Cours de Bases de données 8

Prenons par exemple une entité Client: Voici quelques exemples de clients: Chacun de ces clients représente une occurrence (instance) de l'entité Client. Cours de Bases de données 9

Identifiant Afin de pouvoir distinguer les différentes occurrences d'une même entité, l'entité doit être dotée d'un identifiant. L'identifiant est composé d'une ou de plusieurs propriétés de l'entité. Chaque occurrence d une entité doit avoir une valeur différente pour l identifiant Le choix d'un identifiant correcte est très important pour la modélisation. Cours de Bases de données 10

Comme choix pour l'identifiant d'une entité nous distinguons généralement 3 possibilités: 1. Une propriété naturelle. Exemple: Le nom d'un pays pour une entité Pays 2. Une propriété artificielle qui est inventée par le concepteur. Exemple: Le numéro d'un client pour une entité Client 3. Une propriété composée d'autres propriétés naturelles. Exemple: Le nom et la localité pour une entité Entreprise Cours de Bases de données 11

Définition : (surclè) On appelle une surclé un ensemble d'attributs (parfois réduit à un seul) caractérisant l'entité. Lorsque l'ensemble est minimal on dira que la surclé est une clé. En résumé, une clé est un ensemble minimal d'attributs caractérisant les entités. Deux entités différentes doivent avoir des clés différentes. Dans la déclaration d'entités, en général, la clé est soulignée : personne (numéross, nom, prénom, adresse, âge,...) Cours de Bases de données 12

Association Définition : (Association) On appelle association une relation entre un ensemble d'entités : A = NomRelation(E1,E2,... Ek). Nous distinguons principalement deux types d association: les relations binaires, qui sont liées à 2 entités; les relations ternaires, qui sont liées à 3 entités. Remarque : Le plus souvent k (K est la cardinalité de la relation) vaut 2, on dit que l'association est binaire. Cours de Bases de données 13

Exemple : empruntépar(personne, livre), apourpère(personne, personne). Représentation graphique : (schéma entité association) Cours de Bases de données 14

Fonctionnalités des associations binaires Une association binaire est une association de type A(E1,E2). associations 1:1 : chaque e1 est associé à au plus un e2 et chaque e2 est associé à au plus un e1. exemple : l'association chef_département, a_pour_conjoint. associations 1:n : e1 peut-être associé à plusieurs e2, mais chaque e2 ne pourra être associé qu'à au plus un e2 exemple : est_le_père_de, a_écrit Associations n:1 : l'inverse de la précédente. exemple : a_pour_père, est_édité_par, a_pour_parent, est_parent_de. Association m:n : une entité de E1 peut être associée à plusieurs entités e2 et réciproquement exemple : empunter_par(personne, livre). Cours de Bases de données 15

Cours de Bases de données 16

Attributs associés à une association Lorsque l'on a déterminé un couple d'entités (e1,e2) et que l'on souhaite associer à ce couple certaines valeurs, on associe un attribut à cette association (comme pour une entité). Exemple : lorsqu'une personne emprunte un livre on souhaite conserver la date d'emprunt. EmpruntéPar(Personne, Livre, dateemprunt). Cours de Bases de données 17

DatEmprunt Cours de Bases de données 18

Exemple: Pourquoi est-ce qu on ne peut pas associer la propriété Année à une des entités? Cette date n'aurait aucun sens dans l'entité Etudiant, ni dans l'entité Diplôme, puisqu'il peut y avoir différentes dates d obtention de diplôme pour un même étudiant, de même que le diplôme peut-être obtenu à différentes dates. Cours de Bases de données 19

Exemple: Pourquoi doit-on souligner l «Année»? Comme un professeur peut avoir la même classe pendant plusieurs années, un identifiant composé de No_Matricule et Code_Classe n'est pas suffisant, puisqu il ne garantit pas l unicité. On y ajoute l'année. Cours de Bases de données 20

Attention: Une relation à cardinalité (1,1) n'est jamais porteuse de propriétés. Dans ce cas, les propriétés migrent dans l'entité portant cette cardinalité (1,1). Exemple: Cette modélisation n'est pas correcte! Chaque facture ne possède qu'une et une seule date d'émission, ce qui fait que la propriété Date_émission doit migrer dans l'entité Facture. Cours de Bases de données 21

Voici la modélisation correcte: Cours de Bases de données 22

Cardinalité Définition : (Cardinalité ) c'est un couple de valeurs indiquant les nombres minimum et maximum d'éléments associés. C'est-à-dire les nombre maximum et minimum de liens réels que peut recevoir une instance d entité pour une association donnée. Exemple : une personne peut avoir entre 0 et 30 enfants, un livre peut avoir entre 1 et 10 auteurs etc. A un instant donné, un livre peut être emprunté 0 ou 1 fois. Lorsque l on ne souhaite pas préciser on met 0,n Cours de Bases de données 23

Relation entre cardinalité et type de l'association Type E1 E2 exemple 1 :1 (0,1) ou (1,1) (0,1) ou (1,1) apourconjoint 1 :n (0,n) ou (1,n) (0,1) ou (1,1) Edite n :1 (0,1) ou (1,1) (0,n) ou (1,n) éditépar m :n (0,m) ou (1,m) (0,n) ou (1,n) écritpar En pratique, afin de déterminer les bonnes cardinalités, le concepteur doit se référer aux résultats de l'analyse. Cours de Bases de données 24

Interprétez cette modélisation : On dit que Client est l'entité indépendante par rapport à la relation disposer (cardinalité minimale = 0), tandis que Carte_membre est l'entité dépendante par rapport à la relation disposer (cardinalité minimale = 1). Cours de Bases de données 25

Une relation ne peut pas être liée uniquement à des entités dépendantes ayant en plus une cardinalité maximale de 1!!! Exemple : La modélisation suivante par exemple n'est pas correcte: Cours de Bases de données 26

Association ternaire Exemple : A partir des 3 entités Professeur (CodeProf, Nom, Prénom); Matière(CodeMatière, Libellé) et Classe(Nom,Cycle) il s agit de créer un MCD qui renseigne sur le fait quelle matière est enseignée dans quelle classe par quel professeur pour une année scolaire donnée. Cours de Bases de données 27

Exercice Essayez de montrer les limites/défauts d un MCD qui représente l énoncé de l exemple précédent en utilisant uniquement des relations binaires. Remarque : On utilise une association ternaire quand on a besoin de connaître une occurrence de chaque entité pour avoir une information. Cours de Bases de données 28

Solution de l exemple précédent : Voici une solution qui utilise une relation ternaire Cours de Bases de données 29

Exemple : La direction d une chaîne d hôtels désire gérer les séjours des clients dans les différents hôtels. Comme on peut effectivement dire "Un client effectue un séjour dans un hôtel" on est ammené à proposer la modélisation suivante. Cours de Bases de données 30

Hors, cette modélisation porte une contrainte supplémentaire, puisque la cardinalité 1,1 entre l'entité Séjour et la relation nous indique que pour chaque occurrence de Séjour il ne peut exister qu'une et une seule occurrence de la relation. Cours de Bases de données 31

Plusieurs relations différentes entre deux entités Cours de Bases de données 32

Relation réflexive Cours de Bases de données 33

Exercice Cours de Bases de données 34