Bases de données Licence d Informatique TD No 1 Troisième année MANAGERS MANAGES DEPTS SUPPLIES ITEMS INCLUDES CUSTOMERS BALANCE



Documents pareils
Chapitre 1 Généralités sur les bases de données

1 Introduction et installation

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

Bases de données. Chapitre 1. Introduction

A. Définition et formalisme

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

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

Le Langage SQL version Oracle

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Modèle conceptuel : diagramme entité-association

UML et les Bases de Données

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Introduction aux Bases de Données

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

Formation à l utilisation des Systèmes de Gestion de Bases de Données Relationnelles. organisée avec la collaboration du

Bases de données et sites WEB

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

CONCEPTION ET IMPLANTATION DES SI PROJET : GESTION DU FOYER DE L ENIT

Rappel sur les bases de données

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Bases de Données Avancées

Bases de Données Relationnelles. Le Modèle Relationnel

Heureusement ce n est pas une banque! Guide utilisateur. Guide utilisateur v3.3 page nobanco. All Rights Reserved.

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

I4 : Bases de Données

16H Cours / 18H TD / 20H TP

Introduction au Système de Gestion de Base de Données et aux Base de Données

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

Le langage SQL Rappels

Modélisation des données

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Bases de Données. Plan

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

Cours de Génie Logiciel

UML (Diagramme de classes) Unified Modeling Language

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Construction d un EDD avec SQL 2008 R2. D. Ploix - M2 Miage - EDD - Création

1 Modélisation d une base de données pour une société de bourse

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

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

Pré-conditions : Evénement déclencheur : le client souhaite un virement. Description du déroulement du cas : Description des Use cases

Ecole Polytechnique de Louvain INGI Fichiers et bases de données

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF

Merise. Introduction

Foire aux questions Régime d assurance étudiante

Concevoir un modèle de données Gestion des clients et des visites

Tarifs et taux valables pour la clientèle < 30 ans en vigueur au

Direction de l'urbanisme. Foire Aux Questions. Service Urbanisme

Gestion de Projet. Génie Logiciel. Renaud Marlet. LaBRI / INRIA. (d'après A.-M. Hugues) màj 19/04/2007

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Cours de Probabilités et de Statistique

Foire aux questions (FAQ)

Recherche dans un tableau

Réforme des comptes d épargne réglementés

BD et XML : Exercices

# 1. PERSONNES ASSURÉES 1.1 PERSONNES VISÉES PAR L'ACCORD

Bases de données cours 1

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

MANUEL L I A I S O N B A N C A I R E C O D A D O M I C I L I A T I O N S I S A B E L 6

CHAPITRE 1. Introduction aux bases de données

Guide Tarifaire Banque Privée

Introduction aux bases de données. Généralités sur les bases de données. Fonctions d'un SGBD. Définitions. Indépendance par rapport aux traitements

Statistiques Descriptives à une dimension

Fourniture de matériels pour la plomberie et le chauffage

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

Comité sectoriel de la sécurité sociale et de la santé Section «Santé»

Dossier I Découverte de Base d Open Office

DOSSIER-TYPE DE DEMANDE D AUTORISATION DE CREATION D UN SITE INTERNET DE COMMERCE ELECTRONIQUE DE MEDICAMENTS

DOSSIER-TYPE DE DEMANDE D AUTORISATION DE CREATION D UN SITE INTERNET DE COMMERCE ELECTRONIQUE DE MEDICAMENTS HUMAINS

Si un quadrilatère a. Si un quadrilatère a. Si un quadrilatère a. Si un quadrilatère a. ses côtés opposés. ses côtés opposés de. deux côtés opposés

Introduction aux Bases de Données

Bases de données élémentaires Maude Manouvrier

DÉPLOIEMENT D UN ERP. Cours dispensé pour les L3 MSI Elaboré par : Mehdi M tir 2013/2014 Chapitre 3 : Modélisation des besoins

Tarifs en vigueur à partir du 14/03/2014 (sujets à modifications) Applicables aux comptes Hello bank! à usage privé (Pour les consommateurs)

glossaire Appellation commerciale Voir nom de marque.

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

IFT3030 Base de données. Chapitre 2 Architecture d une base de données

Modèle Entité/Association

Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

Les Entrepôts de Données

Année Universitaire 2009/2010 Session 2 de Printemps

GUIDE DE L'ACTIONNAIRE AU NOMINATIF

Les instruments de règlement à l international

Guide Tarifaire Banque Privée

INTRODUCTION AU DATA MINING

APPRENTIS DU BTP. Ces droits qui vous concernent

La planification de l offre médicale en Belgique: les kinésithérapeutes

Advanzia Bank S.A. Brochure d information sur le compte à vue «Livret Advanzia»

PROJET 1 : BASE DE DONNÉES REPARTIES

DOSSIER DE CREATION ET/OU MODIFICATION DE NOM DE DOMAINE DANS LA ZONE «.fr» ET «.re»

Les bases de données

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

Le livret des réponses

Le PLAN COMPTABLE DES ASSOCIATIONS détaillé

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

L éducation financière. Manuel du participant Les notions de base du crédit

BIEN santé re- gar- aire icit L ub P ctère der cara L à ctue ontra c non Document t /

ils entretiennent entre eux des flux, ils partagent des perceptions sur l environnement

Télécharger le fichier de la Télécharger le fichier de la Télécharger le fichier de la Télécharger le fichier de la...

DIRECTION GENERALE - SIEGE SOCIAL DOCUMENT UNIQUE DE DELEGATION

Transcription:

Université de Provence Bases de données Licence d Informatique TD No 1 Troisième année Modèle Conceptuel Schéma Relationnel Exercice 1 ENAME SALARY EMPS ISA MANAGERS SNAME SADDR WORKS IN MANAGES DNAME SUPPLIERS DEPT# DEPTS SUPPLIES PRICES CARRIES INAME ITEMS ITEM# 0# DATE ORDERS INCLUDES QUANTITY PLACED BY CUSTOMERS CNAME BALANCE CADDR Figure 1. Modèle entité-association pour la base de données YVCB (Yuppie Valley Culinary Boutique). Le Modèle Conceptuel de Données présenté ci-dessus est le modèle entité-association qui permet une représentation graphique du schéma d une BD : diagramme entité-association (diagramme EA). On y retrouve 3 types de données : 1. Les rectangles composent les types d entité (TE). Ils représentent un ensemble d entités perçues comme similaires et ayant les mêmes caractéristiques. Chaque entité (E) représente un objet du monde réel, perçu comme ayant une existence propre, et à propos duquel on veut enregistrer des informations. Ex : Suppliers, Customers, Items, 2. Les losanges composent les types d associations (TA). Ils représentent un ensemble d associations ayant la même sémantique et décrites par les mêmes caractéristiques (liant des entités de mêmes types avec mêmes rôles et mêmes propriétés, respectifs). Chaque association (A) représente un lien entre plusieurs entités, où chaque entité joue un rôle déterminé ; si l association lie des entités du même type, elle est dite cyclique ou réflexive et, dans ce cas, la spécification des rôles est indispensable. Ex : Includes, Carries, Supplies, Page 1 sur 8

3. Les ellipses composent les listes d attributs. Les attributs (Att) représentent les propriétés associées à un type d entité ou à un type d association, ou même participant à la composition d un autre attribut. L ensemble des attributs d un TE (TA) représente l ensemble des informations inhérentes que l on souhaite conserver sur les entités ou associations. Ex : Salary, Balance, Quantity, On appelle occurrence d un TE (TA) toute entité (association) appartenant à l ensemble décrit par le TE (TA). On appelle population d un TE (TA) l ensemble des occurrences du TE (TA). EMPS ename salary WORKS IN ISA DEPTS dname dept# CARRIES MANAGERS MANAGES ITEMS item# iname SUPPLIERS sname saddr SUPPLIES prices ORDERS O# date INCLUDES PLACED BY CUSTOMERS cname caddr balance On peut retrouver aussi la représentation suivante pour le modèle entité-association. Les cardinalités d un lien entre un TE E et un TA A sont définis par le couple (a,b) = card(e,a) où a est le nombre minimum et b le nombre maximum de fois qu une occurrence du TE peut être concernée par le TA. Les possibilités pour a et b sont 0, 1 ou N (pour indéterminé). Les nombres a et b vérifient les propriétés suivantes : Le couple de cardinalités (a,b) vérifie toujours la relation : a b. La cardinalité maximum vérifie la relation : b 1. Si a = 0, on parle de participation partielle du TE au TA (toute occurrence du TE peut exister indépendamment du TA). Si a 1, on parle de participation totale du TE au TA (aucune occurrence du TE ne peut exister indépendamment du TA). Si b = 1, toute occurrence du TE assume au plus une fois le rôle correspondant. Si b = N, toute occurrence du TE peut assumer un nombre non limité de fois le rôle correspondant. Page 2 sur 8

Exemple de l association «depts manages managers» : DEPTS dname dept# MANAGES MANAGERS Pour déterminer la cardinalité entre «manages» et «depts», on se fixe un «manager» donné. Donc pour un directeur donné, combien de départements différents peut il diriger? Au minimum, il peut en diriger aucun, mais il ne peut pas diriger plus d un. Par conséquent, on en déduit la cardinalité. De la même manière, on fixe un «dept». Dans ce cas, on peut avoir aucun directeur qui le dirige, fixant ainsi la cardinalité minimale. On peut aussi avoir plusieurs directeurs pour un même département, d où la cardinalité maximale indéfini N. Par conséquent, la cardinalité entre «manages» et «managers» est. Les liaisons entre les entités, les associations et les attribuent sont de deux sortes : 1. Les traits continuent expriment un contrainte de cardinalité normale. 2. Les flèches expriment des cas particuliers de contrainte de cardinalité, correspondant au cas où toute occurrence du TE assume au plus une fois le rôle correspondant, soit le couple (0,1). Une flèche est toujours dirigée de l association vers l entité. On classifie une association binaire A selon les cardinalités maximums des entités participants E et F : A est 1:1 si maxcard(e,a) = 1 et maxcard (F,A) = 1 A est 1:N si maxcard(e,a) = 1 et maxcard (F,A) = N A est N:N si maxcard(e,a) = N et maxcard (F,A) = N (ou vice-versa) Sur l exemple précédent, l association «manages» est une association binaire (car elle lie 2 entités «depts» et «managers»). La cardinalité maximale entre «depts» et «manages» est 1, et la cardinalité maximale entre «managers» et «manages» est N. On en déduit que l association «manages» est une association binaire 1:N. Page 3 sur 8

Exercice 2 Enoncé : Une personne peut ouvrir un ou plusieurs comptes à une agence bancaire. Elle doit donner son nom, son adresse, et éventuellement son numéro de téléphone. Chaque compte a une seule date d ouverture, un numéro d identification de compte, et un type (compte de chèques, compte épargne, etc.). Un compte a un seul titulaire. Chaque agence bancaire a un nom, un numéro d agence, une adresse et un numéro de téléphone. Une opération est effectuée par une seule personne (le titulaire du compte ou un tiers) et concerne au plus deux comptes : le compte émettant et le compte recevant l opération. Une opération a un numéro d identification, une date, un lieu, un type qui indique la nature de l opération : retrait par carte bancaire, versement de salaire, encaissement ou paiement de chèque, virement de compte en compte, etc. Le solde d un compte est établit à une date précise, au début de chaque mois. Si le solde est négatif, alors une lettre est adressée au titulaire du compte. Questions : 1. Liste des entités (avec ses attributs) Personne : Nom, Adresse, Numéro de téléphone (éventuel) Compte : Type, Date d ouverture, Numéro d identification de compte Agence : Nom, Numéro d agence, Adresse, Numéro de téléphone Opération : Numéro d identification, Date, Lieu, Type Liste des associations entre entités Effectuer : Personne et Opération Ouvrir: Titulaire, Compte et Agence Concerner : Opération et Compte(s) Appartenir : Compte et Personne Lire le solde (solde, jour) : Titulaire et Compte 2. Définition des clés primaires pour chaque entité Personne : Nom, Adresse, Numéro de téléphone Compte : Numéro d identification de compte Agence : Numéro d agence Opération : Numéro d identification 3. Liste de contraintes de données (de cardinalités) Association «Effectuer» : o Une personne peut réaliser aucune ou plusieurs opérations : contrainte entre «personne» et «effectuer». o Une opération peut être concernée par une et une seule personne (titulaire ou non) : contrainte entre «opération» et «effectuer». Association «Ouvrir» : o Un compte peut être ouvert par une seule personne et dans une agence donnée : contrainte entre «compte» et «ouvrir». o Une personne peut ouvrir un ou plusieurs compte compte dans une ou plusieurs (si au moins 2 comptes) agence, mais aucune agence peut être associée à un compte si la personne n est pas le titulaire du compte : contrainte entre «personne» et «ouvrir». Page 4 sur 8

o Une agence peut contenir plusieurs comptes d une même personne ou de personnes différentes, et elle peut n avoir aucun client dans un tel cas, l agence est inutile) : contrainte entre «agence» et «ouvrir». Association «Concerner» : o Pour un compte émetteur, plusieurs opérations sont possibles, de même pour le compte réceteur : contrainte entre «compte (émetteur)» et «concerner», contrainte entre «compte (récepteur)» et «concerner». o Pour une opération donnée, au plus deux comptes sont concernés, soit au maximum un compte émetteur et un compte récepteur. Au minimum, on aura un compte associé à cette opération : contrainte entre «opération» et «concerner». Association «Lire le solde» : o Pour un compte donné, on a une et une seule personne titulaire de ce compte : contrainte entre «compte» et «lire le solde». o Pour une personne donnée, on peut avoir aucun ou plusieurs comptes concernés par la lecture du solde et l envoi d un courrier pour solde négatif : contrainte entre «personne» et «lire le solde». Association «Appartenir» : o Pour un compte donné, on a une et une seule personne titulaire de ce compte : contrainte entre «compte» et «lire le solde». o Pour une personne donnée, on peut avoir aucun ou plusieurs comptes concernés par la lecture du solde et l envoi d un courrier pour solde négatif : contrainte entre «personne» et «lire le solde». Liste de contraintes de données (fonctionnelles) Les contraintes fonctionnelles sont les suivantes : Pour un bon fonctionnement, c'est-à-dire pour que chaque mois, le solde de tous les comptes soit effectué, il faut que le jour soit compris entre 1 et 28 (au dessus, on risque de ne pas contrôler le solde tous les mois). Association et contraintes fonctionnelles : Appartenir o Compte Personne Ouvrir o Compte Personne, Agence Effectuer o Opération Personne Concerner Opération Compte _ émetteur, Compte _ récepteur o ( ) o Compte Lire _ le _ solde Personne 4. Graphe du modèle conceptuel de données : Voir figure page suivante. 5. Schéma de base de données relationnelle de cette gestion Pour passer du schéma Entité-Association au schéma de base de données relationnelle, il faut respecter les 5 règles suivantes : Règle 1 : type d entité Pour chaque TE E, créer une relation R ; Inclure dans R tous les attributs simples de E ; Inclure dans R les composants simples des attributs composés de E ; Un identifiant de E devient clé primaire de R ; Page 5 sur 8

La notion d attribut composé est perdue dans le modèle relationnel ; Les relations telles que R sont appelées relations d entité. Règle 2 : association binaire 1:1 A : association binaire 1:1 entre TE E 1 et E 2 ; R 1, R 2 : relations obtenues à partir de E 1 et E 2 ; Choisir R 1 ou R 2 pour représenter l association A (préférer R 1 si E 1 est total dans A) ; Inclure comme clé étrangère dans la relation choisie R 1, la clé primaire de R 2 ; Inclure dans R 1 les attributs simples et composants simple d attributs de A ; A peut aussi être représenté par une relation (comme par la règle 5). Règle 3 : association binaire 1:N A : association binaire 1:N entre TE E 1 (card. Max = 1) et E 2 (card. Max = N) ; R 1, R 2 : relations obtenues à partir de E 1 et E 2 (préférer R 1 si E 1 est total dans A) ; Inclure comme clé étrangère dans R 1 la clé primaire de R 2 ; Inclure dans R 1 les attributs simples et composants simple d attributs de A ; Si la cardinalité de E 1 est (1,1), la clé étrangère ne peut recevoir la valeur NULL. Règle 4 : association binaire N:N R 1, R 2 : relations obtenues à partir des TE E 1 et E 2 de l association A ; Représenter A comme une relation R, de clés étrangères les clés primaires de R 1 et R 2 ; La clé primaire de R est composée de ces deux clés étrangères; Inclure dans R les attributs simples et composants simple d attributs de A ; Peut être appliquée aux associations 1:1 et 1:N ; Les relations telles que R sont appelées relations d association. Règle 5 : association n-aire (n>2) Créer une relation R représentant l association n-aire A ; Inclure dans R les attributs simples et composants simple d attributs de A ; inclure comme clés étrangères dans R les clés primaires des relations représentant les TE de A ; La clé primaire de R est composée de ces clés étrangères, excepté si un TE de A est de cardinalité maximum 1 dans A, auquel cas la clé primaire de R est celle de la relation représentant ce TE. OPERATION CONCERNER ID_O Date_O Type_O Lieu EFFECTUER émetteur r récepteu APPARTENIR COMPTE ID_C Date_C Type C LIRE SOLDE Solde Jour OUVRIR PERSONNE Nom_P Adr_P Tel_P AGENCE ID_A Nom_A Adr_A Tel_A Page 6 sur 8

Entités en relations : Opération ( ID_O, Type_O, Date_O, Lieu, #Nom_P, #Adr_P, #Tel_P ) Compte ( ID_C, Type_C, Date_C, Solde, #Nom_P, #Adr_P, #Tel_P ) Personne ( Nom_P, Adr_P, Tél_P ) Agence ( ID_A, Nom_A, Adr_A, Tél_A ) Associations en relations : Concerner ( #ID_O, #ID_C1, #ID_C2 ) Ouvrir ( #ID_C, #ID_A, #Nom_P, #Adr_P ) Lire_Solde ( Solde, Jour, #ID_C, #Nom_P, #Adr_P, #Tel_P ) 6. Clés de chaque relation Une clé est un ensemble minimal d attributs ayant la propriété d identification unique de tuple. Un tuple est un ensemble de couples <attributs, valeurs>. On parle de clés candidates lorsque l on a plusieurs clés, sinon on parle de clé unique. Une clé primaire est une clé privilégiée choisie parmi les clés candidates. La clé d une relation R1 est dite étrangère si elle correspond à la clé primaire d une seconde relation R2 (R2 pouvant être identique à R1). Dans les schémas de relations de la question 5, les clés primaires sont soulignées et les clés primaires sont précédées d un #. Page 7 sur 8

Exercice 3 Enoncé : On s intéresse à la vente de produits dans une pharmacie. Un produit est caractérisé par un nom de produit, une classe pharmaceutique, un nom de fabricant, un numéro de lot, une date d expiration, et un type de remboursement (attribué par la sécurité sociale). Chaque produit est déterminé par son nom et son numéro de lot. Un produit peut être remboursable ou nonremboursable. Dans le premier cas, le pourcentage du remboursement dépend de la classe pharmaceutique du produit. Le prix d un produit n est pas fixé, il est varié selon les périodes (promotions, augmentation de prix des fabricants, etc.). L achat d un produit remboursable nécessite une ordonnance d un médecin. Un médecin est caractérisé par un nom, une adresse, un numéro d agrément et une spécialité. Sur une ordonnance, on voit les informations concernant le médecin et le patient, la date de consultation, et une liste de médicaments avec les prescriptions de traitement. La pharmacie garde une copie de chaque ordonnance à laquelle il attribue un numéro unique. D après la liste de produits sur l ordonnance, une préparatrice (ou un préparateur) de la pharmacie cherche les produits et établit une facture. Chaque facture a une date, un numéro d identification et une liste de produits avec leur quantité. Si une facture a des produits remboursables, alors on distingue la somme à payer par le patient (le client) lui-même, la somme à rembourser par la sécurité sociale et la somme à rembourser par la mutuelle. Un client est caractérisé par un nom, une adresse, un numéro de téléphone. S il bénéficie de la sécurité sociale, alors il en a un numéro d identification, un numéro du centre de gestion de remboursements de la sécurité sociale. Un client peut avoir au plus une seule mutuelle. Chaque mutuelle a un nom, une adresse du centre local de gestion de remboursements, dépendant de patients. Il est de même pour les centres de gestion de remboursements de la sécurité sociale. Correction : Non mis en ligne pour laisser aux étudiants le soin de créer par eux même celui du projet 2007, car le sujet de projet ressemble beaucoup à cet exercice même s il y a des changements qui peuvent conduire à des différences notables entre les deux MCD. Page 8 sur 8