Conception d une Base de Données



Documents pareils
Modèle conceptuel : diagramme entité-association

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

LE MODELE CONCEPTUEL DE DONNEES

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

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

Rappel sur les bases de données

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

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Dossier I Découverte de Base d Open Office

Créer le schéma relationnel d une base de données ACCESS

Modélisation des données

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

Le langage SQL Rappels

Méthode d analyse Merise

NF26 Data warehouse et Outils Décisionnels Printemps 2010

Le modèle de données

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

PNL & RECRUTEMENT IMPACT SUR LES ENTRETIENS Présentation du 10/06/03

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

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

Conception d une base de données

A. Définition et formalisme

Access 2010 Entraînement 1 Garage Renault Dossier 24 MCD

Comment régler un litige avec son vendeur de produits financiers?

Nom de l application

PROJET DE PORTAIL INTRANET YNNA

EXCEL TUTORIEL 2012/2013

Introduction aux Bases de Données

GUIDE DE PRISE EN MAIN

Base de données relationnelle et requêtes SQL

Importation des données dans Open Office Base

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

SOFI Gestion+ Version 5.4. Echanges de données informatiques Spicers Sofi gestion+ Groupements. SOFI Informatique. Actualisé le

Séquence de découverte de SparkAngels Logiciel d entraide numérique

Notice Générale - MODULE CLIENTS. I. Description générale du module. II. La liste des clients a. Accès

Modèle Entité/Association

Cours pratique Excel. Dans chacune des feuilles, les donnés sont déjà entrées afin de gagner du temps.

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

Business Intelligence

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

LES TOUT PREMIERS PAS

Utiliser un tableau de données

23. Le discours rapporté au passé

Les Différents types de Requêtes dans Access

Gé nié Logiciél Livré Blanc

GUIDE PRATIQUE MODÈLE CONCEPTUEL DES DONNÉES MODÈLE LOGIQUE DES DONNÉES STANDARD MODÈLE LOGIQUE DES DONNÉES OPTIMISÉ

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

peu peux/peut peut être peut-être

Saisie de données dans plusieurs tables

CAP BOX Note utilisateurs

I4 : Bases de Données

Foire aux Questions Application de gestion des conventions de stage Pstage

curité du patient 19 mai 2009 Aurore MAYEUX Guy CLYNCK LIE

Merise. Introduction

B Projet d écriture FLA Bande dessinée : La BD, c est pour moi! Cahier de l élève. Nom : PROJETS EN SÉRIE

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

Bases de données relationnelles

Bases de données Cours 1 : Généralités sur les bases de données

Compte-rendu de Hamma B., La préposition en français

Les bases de données Page 1 / 8

Langage SQL : créer et interroger une base

Déterminants possessifs

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

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

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

EVOLUTION 7.1 Déroulement DREAM INFO 1 Dossier 23 Ciel Gestion Commerciale.

Bases de données. Chapitre 1. Introduction

Evry - M2 MIAGE Entrepôt de données

Stagiaire Ecole professionnelle supérieure (EPS)

Notion de fonction. Série 1 : Tableaux de données. Série 2 : Graphiques. Série 3 : Formules. Série 4 : Synthèse

I. Le déterminant Il détermine le nom. Le déterminant indique le genre, le

RÉDIGER SON CV EN FRANÇAIS

Thèmes et situations : Cadre et conditions de travail. Fiche pédagogique

Durée de L épreuve : 2 heures. Barème : Exercice n 4 : 1 ) 1 point 2 ) 2 points 3 ) 1 point

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

Bases de Données. Plan

Schéma relationnel et contraintes d intégrité : le cas ConduiteAuto

Tableau de bord économique du tourisme en Maurienne Hiver 2005/2006

avec des nombres entiers

TECHNIQUES DE SURVIE ÉCRITURE Leçon de littératie 2.6

16H Cours / 18H TD / 20H TP

Chapitre 2. Eléments pour comprendre un énoncé

Le passé composé. J ai trouvé 100 F dans la rue. Il est parti à 5 h 00.

L État et la TVA SENS ET PORTÉE DE L ÉTUDE

MARCHÉ PUBLIC DE FOURNITURES

Cours d initiation à la programmation en C++ Johann Cuenin

SOMMAIRE. Travailler avec les requêtes... 3

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO

Manuel utilisateur. Version 1.6b

OpenLDAP : retour d expérience sur l industrialisation d annuaires critiques

SPF FIN. Patris Spécification de Use Case: 15-UC01 Obtenir de l'information patrimoniale. Version 1.1

David LUCAS 15/01/10 Ludovic HUET Sébastien LE NECHET Jason JAMOT. Projet BO

Tickets 3:3. ChevauxPartants

FORMULES DE CALCUL. Prix = PV TTC = PV HT x (1 + taux de TVA) TVA = PV HT x taux de TVA PV HT = PV TTC 1 + taux de TVA

Manuel d utilisation JeResilieMonContrat.com. pour l agent

MPI Activité.10 : Logique binaire Portes logiques

Encryptions, compression et partitionnement des données

Concevoir une base de données

Transcription:

Conception d une Base de Données La construction d une Base de Données doit correspondre à un besoin de mémoriser et de traiter des informations. Nous savons que le résultat à obtenir est un ensemble de Tables liées entre elles par des Relations, soumises à des Contraintes. Chaque table doit posséder un clé primaire qui identifie de façon unique les lignes de la table. On appelle clé étrangère, un attribut qui est clé primaire dans une autre table. Les relations s expriment par les liens cl é primaire clé étrangère. Toutes les moyennes et grandes entreprises travaillent aujourd hui sur des Bases de Données dont la taille s évalue en Giga Octets. Les relations entre tables sont très complexes et il a fallu des années pour les construire. Lorsque le problème est complexe, on vous a appris, depuis DESCARTES, qu il est souhaitable de le diviser en un ensemble de problèmes plus simples. Cette méthode s applique aussi à la conception des Bases de Données et permettra de mettre en évidence des DOMAINES D APPLICATION. Dans la gestion d une Association (problème complexe) on peut définir les domaines d application suivants : Gestion des Adhérents, Gestion des Séjours, Gestion des Compétitions, Gestion de la Comptabilité, etc... La première étape de la construction d une Base de Données consistera à étudier «l UNIVERS DU MONDE REEL», à bien identifier les BESOINS et à mettre en évidence les DOMAINES à informatiser. REFLECHIR AVANT D AGIR doit être votre soucis principal. Avant de vous lancer à corps perdu dans l informatisation d un DOMAINE, vérifier s il n existe pas une solution informatique adaptée à votre problème. Il est souvent préférable d utiliser un logiciel existant qui couvre 80 % du problème que vous avez identifié, que de créer ou de faire créer un logiciel qui le résoudra à 100%. Bon! Rien n existe sur le marché, vous avez identifié vos domaines et vous brûlez d impatience d utiliser le dernier S.G.B.D. relationnel que vous venez d acheter. Et bien NON!, il n est pas question de se lancer dans la conception des tables sans avoir analysé et trouvé une représentation symbolique de votre problème. C est la deuxième étape de la construction de la Base de Données : La phase de Modélisation de la Réalité. On parlera de MCD (Modèle Conceptuel des Données). Réaliser un modèle du domaine d application, c est s obliger à se poser des questions. Il existe plusieurs méthodes de modélisation d un problème. Nous avons choisi le modèle dit Entité Association. C est le modèle le plus utilisé en France. Un modèle permet de s affranchir de la technologie. Votre modèle restera vrai lorsque les Bases de Données Relationnelles seront remplacées par une nouvelle génération de S.G.B.D. Enfin, après avoir longtemps, longtemps, longtemps...réfléchi, vous pourrez passer à la troisième étape, qui consistera à transformer les «objets» de votre modèle en Tables sur le S.G.B.D. que vous avez choisi. Il restera enfin une quatrième étape qui consiste à écrire les programmes d accompagnement de la Base pour rendre son accès «CONVIVIAL» à un non informaticien. Mais ceci est une autre histoire... Etape 1 Etape 2 Etape 3 Etape 4 Les BESOINS Les DOMAINES MODELISATION GENERATION des TABLES PROGRAMMATION Jacques Chambon 1/9

Comment obtenir un modèle des Données? Travaillons sur le domaine «Gestion des Adhérents». Comment s y prendre pour démarrer l étude de ce domaine? Nous allons vous donner des pistes et les principes d une méthode. Le maître mot dans la phase de Recherche d une solution, on dira «d ANALYSE», c est la COMMUNICATION. Comment communique-t-on? Par le langage et par l écrit. Vous obtiendrez les informations nécessaires à votre étude en dialoguant avec les personnes concernées par le domaine analysé ; en récoltant et en disséquant les documents de gestion utilisés par l organisation, documents bien sûr, relatifs à votre domaine d étude. Analyse d un dialogue Un dialogue c est une série de questions et de réponses. C est vous qui posez les questions et qui devrez analyser les réponses. Cette analyse consistera à décomposer toutes les phrases prononcées par votre interlocuteur en phrases élémentaires. Phrases élémentaires Qu est ce qu une phrase élémentaire? C est une phrase limitée à la structure suivante. SUJET VERBE COMPLEMENT La démarche de composition sera la suivante : On ne conserve qu un verbe par phrase ; Le sujet identifie une ENTITE du DOMAINE le complément est soit une caractéristique de l ENTITE, soit une autre ENTITE. On décomposera les phrases jusqu à ce qu elles soient toutes exprimées sous la forme : ENTITE VERBE Caractéristique Exemple de dialogue : Q «Comment identifiez-vous les membres de votre association?» R «Nous les appelons des Adhérents. Nous avons besoin de leur nom, prénom, adresse et date de naissance. Nous leur demandons également une photo et leur numéro de téléphone personnel.» Décomposition Un Adhérent a un nom. Entité verbe caractéristique Un Adhérent a un prénom Entité verbe caractéristique Un Adhérent habite à une Adresse ENTITE verbe ENTITE Un Adhérent a une date de naissance Entité verbe caractéristique Un Adhérent a une photo Entité verbe caractéristique Un Adhérent a un n de téléphone Entité verbe caractéristique Adresse est une entité abstraite qui peut être décomposée en rue, résidence, code postal et ville. Une Adresse est composée d une rue Entité verbe caractéristique Une Adresse est composée d une résidence Entité verbe caractéristique Une Adresse est composée d un code postal Entité verbe caractéristique Une Adresse est composée d une ville Entité verbe caractéristique Vous arrivez à une décomposition terminale lorsque vous pouvez utiliser les verbes «avoir» ou «est composé». Mais tous les dialogues ne sont pas aussi simple à interpréter. Le premier écueil est celui de la personnalisation du dialogue, le second celui de l ambiguïté de la langue. Jacques Chambon 2/9

Il vous faudra donc être PERSPICACE et la plupart du temps faire preuve de «BON SENS». Autre exemple de dialogue : Un responsable : «Tiens, je vous présente un de nos adhérents : Mr Daffiot qui vient d amarrer Bitonio au ponton n 2.» Vous : C est un beau bateau. Mr DAFFIOT : Oui : c est un Jouet 24 de 1993. Vous : Il est à vous? Mr DAFFIOT : Oui je l ai acheté cette année à Mr Untel pour courir en Groupe 1. Phrases types Une phrase type est une phrase dans laquelle : on fait un tri en ne retenant que les phrases qui ont un intérêt pour le domaine étudié. on enlève toute référence nominative aux Entités. On les remplace par des noms génériques. Décomposition en phrases élémentaires Décomposition en phrases type : Mr DAFFIOT est un adhérent Un adhérent a un nom Mr DAFFIOT possède BITONIO Un adhérent possède un bateau BITONIO est un bateau Un bateau a un nom BITONIO est amarré à un ponton Un bateau est amarré à un ponton un ponton a le n 2 Un ponton a un numéro BITONIO est un Jouet 24 Un bateau a un type BITONIO a été construit en 1993 Un bateau a une date de construction BITONIO court en GROUPE1 Un bateau court dans une catégorie BITONIO a été acheté cette année. Un bateau a une date d achat BITONIO a été vendu par Mr UNTEL Un bateau a un ancien propriétaire Le Modèle conceptuel des Données Première Etape : Traduction des phrases types en graphique Nous ne considérons dans un premier temps que les phrases types de la forme : Entité Verbe Entité Le verbe établit un lien entre les Entités : il les associe. C est pourquoi, dans le modèle que nous allons utiliser les verbes seront qualifiés d ASSOCIATIONS. Les Entités sont représentées par un rectangle, les associations par une rectangle ovalisé E N T I T E 0, n A s s o c i a t i o n 0, n E N T I T E _ ADHERENT possède BATEAU Un Adhérent habite à une Adresse habite court est amarré Un Adhérent possède un Bateau Un Bateau est amarré à un Ponton Un Bateau court dans une Catégorie ADRESSE CATEGORIE PONTON Deuxième Etape : Enrichissement du graphique 1 - Introduction des caractéristiques dans les Entités. Les caractéristiques sont introduites dans leurs entités respectives. Jacques Chambon 3/9

Le mot de caractéristique doit être pris ici au sens littéral du terme. En informatique, on utilise plutôt des synonymes : attribut, propriété ou champ. En tout état de cause l entité deviendra une table, les caractéristiques se matérialiseront par des champs. 2 - Recherche des Cardinalités. On reprend chaque phrase type de format : Entité Verbe Entité On essaie d introduire à gauche du verbe, le verbe POUVOIR et de qualifier le complément par UN SEUL, UNE SEULE ou PLUSIEURS. (Le choix dépend de la réalité que vous observez et vous permet de guider un entretien.) On inverse dans un deuxième temps, chaque phrase type et on y applique la méthode précédente. Phrase type d origine Un Adhérent habite à UNE SEULE Adresse. Un Adhérent PEUT posséder PLUSIEURS Bateaux Un Bateau est amarré à UN SEUL Ponton Un Bateau court dans UNE SEULE Catégorie Phrase type inversée A une Adresse n habite qu UN SEUL Adhérent Un Bateau PEUT être possédé par PLUSIEURS Adhérents A un Ponton s amarre PLUSIEURS Bateaux Dans une Catégorie courent PLUSIEURS Bateaux Les Cardinalités vont apparaître sur les liens du modèle sous la forme de deux valeurs l une minimale, l autre maximale. Les combinaisons possibles sont (0,1), (1,1), (), () Si vous avez réussi à placer l adjectif «PLUSIEURS», la Cardinalité maximale sera «n», sinon ce sera «1». Pour déterminer la Cardinalité minimale il faut vous poser une nouvelle question pour chaque phrase type : La réalité qu on exprime peut-elle ne pas exister? Phrases types Question de non existence Réponse (fonction de la Réalité) Cardinalité Minimale Cardinalité Maximale Un Adhérent habite à UNE SEULE Adresse. Un Adhérent peut-il ne pas avoir d Adresse? NON 1 1 Un Adhérent PEUT posséder PLUSIEURS Bateaux Un Bateau est amarré à UN SEUL Ponton Un Adhérent peut-il ne pas posséder de Bateau? Un Bateau peut-il ne pas être amarré à un Ponton? OUI 0 N NON 1 1 Un Bateau court dans UNE SEULE Catégorie A une Adresse n habite qu UN SEUL Adhérent Un Bateau PEUT être possédé par PLUSIEURS Adhérents A un Ponton s amarre PLUSIEURS Bateaux Un Bateau peut-il ne pas être rattaché à une Catégorie? Une Adresse peut-elle ne correspondre à aucun adhérent? NON 1 1 NON 1 1 Un bateau peut-il n appartenir à personne? NON 1 N Existe-t-il des pontons sans Bateau.? NON 1 N Dans une Catégorie courent Existe-il des catégories sans Bateau? NON 1 N PLUSIEURS Bateaux La valeur «0» est associée à une réponse OUI, la valeur «1» à une réponse NON. En reportant les informations précédentes sur le schéma, nous obtenons le modèle suivant : Jacques Chambon 4/9

A D HE R E NT C o d e a d h é r e n t# PLUSIEURS No m p o s s è d e P r é n o m 0,n 1,n D a te d e Na is s a n c e Nu m é r o té lé p h o n e p e r s o n n e l P h o to 1,1 h a b ite UN PLUSIEURS UN C o u r t 1,1 B A T E A U No m d u B a te a u D a te d ' A c h a t D a te d e C o n s tr u c tio n T y p e A n c ie n p r o p r ié ta ir e 1,1 e s t a m a r r é UN 1,1 A D R E S S E UN A d r e s s e C o m p lé m e n t d 'A d re s s e C o d e P o s ta l V ille PLUSIEURS 1,n C A T E G O R IE D é s ig n a tio n PLUSIEURS 1,n P O NT O N Nu m é r o Remarque : Les mots UN et PLUSIEURS ne font pas partie de la représentation du modèle. Troisième Etape : Réorganisation des Entités 1 - Recherche des entités inutiles Si vous obtenez de part et d autre d une association des cardinalités (1,1) c est que l association que vous avez mis en évidence n en est pas une. Vous pouvez alors la supprimer et intégrer les caractéristiques en une seule Entité. Dans notre exemple, nous «remonterons» les caractéristiques de l adresse dans l entité Adhérent. 2 - Recherche de l identifiant des entités Pour chaque entité, vous devez trouver une Clé Primaire. Elle doit identifier de façon unique chaque «enregistrement» de «l entité». Choisissez l une des caractéristiques existantes. Si vous n en trouvez pas, ajoutez une caractéristique codifiée. S il apparaît alors dans votre modèle une Entité qui ne possède que la clé primaire, comme dans l entité «Ponton», supprimez la et remontez cette clé comme caractéristique de l Entité liée. Mais s il s agit d une date, vous conserverez l Entité. 3 - Travail sur les associations Pour obtenir une meilleure lisibilité du modèle, on attribuera un verbe à l infinitif à chaque association. ADHERENT Code adhérent Nom Prénom Date de Naissance Adresse Complément d'adresse Code Postal Ville être propriétaire Un Adhérent peut être Propriétaire de Plusieurs Bateaux. (n) Tous les Adhérents ne sont pas Propriétaires. (0) Un Bateau peut appartenir à Plusieurs Propriétaires. (n) Tous les Bateaux ont au moins un Propriétaire. (1) Un Bateau court dans une seule Catégorie. (1) Une Catégorie regroupe plusieurs Bateaux. (n) BATEAU Numéro du Bateau Numéro voile du Bateau Nom du Bateau 1,1 1,1 regrouper CATEGORIE BATEAU Code Catégorie Bateau Libellé Catégorie Bateau AMARRER PONTON Numéro Ponton Un Bateau est amarré a un seul ponton (1) A un ponton sont amarrés plusieurs bateaux (n) Jacques Chambon 5/9

Analyse de documents existants C est la deuxième source d informations pour concevoir une Base de Données. Vous devez mettre en évidence trois types d informations. les informations pré-imprimées du document ; les informations calculées ; les informations introduites : les DONNEES. Facturation des séjours Exemple de facture C.V.A.T. Bassin à flot Date Facture 33000 BORDEAUX 29/04/2xxx 05 56 35 58 29 A.E.C.A 25, Place TOURNY 33000 Bordeaux Séjour : Centre d'arcachon : Groupe de 30 personnes. Week end 26-27 Avril 2xxx Services facturés Prix Unitaire TVA Quantité Montant Location PV 7,50 2 30 225,00 Hébergement 15,00 2 42 630,00 Location VTT 7,00 2 25 175,00 Repas 7,50 1 97 727,50 Petits Déjeuners 2,00 1 37 74,00 - - - TVA 1 2 TOTA HT 1 831,50 Base 801,50 1 030,00 0%Remise - Taux 5,50% 19,60% Net Commercial 1 831,50 Montant 44,08 201,88 Montant TVA 245,96 TOTAL TTC 2 077,46 Payable avant le : 31 mai 2xxx Données Calculées Les informations sur fond noir constituent la partie pré-imprimée du document. La facture est adressée au client, dans la semaine qui suit le séjour. Jacques Chambon 6/9

Décomposition en phrases type Seules les données nous intéressent. Après les avoir identifiées, il faut reconstituer les phrases type. Une facture a une date. Une facture a un numéro Une facture s adresse à un client. Un client a une raison sociale. Un client a une adresse. Un client a un code postal. Un client a une ville. Une facture a un commentaire. Une facture contient plusieurs services. Un service a une désignation. Un service a un prix. Un service a une quantité pour une facture. Cette dernière phrase est indécomposable. En admettant qu elle le soit : la décomposition serait le suivante : Un service a une quantité. Examinons la facture. Séjour : Est FAUX Centre du Cap Ferret : Groupe de 10 personnes. Séjour 12-13 Avril 2003 Services facturés Prix Unitaire Quantité Montant Location PV 7,50 10 75,00 Hébergement 15,00 10 150,00 Location VTT 7,00 8 56,00 En comparant avec la facture précédente, on voit que les services identiques sont facturés au même prix. On peut donc affirmer que le prix est lié à la nature du service. Par contre la Quantité facturée est différente selon les factures pour le même service, mais aussi dans la même facture selon les services. Cela signifie donc que la quantité facturée est dépendante du SERVICE ET de la FACTURE. Première représentation graphique s'adresse à CLIENT FACTURE 1,1 contient SERVICE Jacques Chambon 7/9

Deuxième représentation graphique F A C T U R E 1, 1 N u m é r o d a t e c o m m e n t a ir e 1, n A d r e s s e r C O N T E N I R Q u a n t it é 0, n 0, n C L I E N T R a is o n s o c ia l e o u n o m A d r e s s e C o d e P o s t a l V il l e S E R V I C E D é s ig n a t io n P r ix Une Facture ne s adresse qu à un seul client (1) Un Client peut avoir plusieurs factures à régler, mais peut être aucune. (0) Une Facture peut comporter plusieurs lignes de facture (n), mais au moins une. (1) Un Service peut figurer dans plusieurs lignes de facture (n), mais peut être dans aucune. (0) Un modèle exprime une certaine VUE de la Réalité. C est une vision en «COMPREHENSION». Chaque Entité et association va se transformer en Tables. Il devient donc possible de donner un exemple du contenu de chaque table. C est une vision en «EXTENSION». Ce type de représentation peut vous aider à bien comprendre l organisation d un modèle. N hésitez pas à l utiliser! Donnez vous des exemples! FACTURE Numéro date commentaire 225 22/05/2002 Centre du Cap Ferret : Groupe de30 personnes 226 30/05/2002 Week Centre end du Cap 20 - Ferret 21 Mai : 1995 Groupe de 10 personnes. 227 30/05/2002 Week Centre end d'arcachon 27-28 Mai : Groupe 1995 de 50 personnes Dimanche 28 Mai 1995 CLIENT Raison sociale ou nom Adresse Code Postal Ville A.E.C.A. 25, Place TOURNY 33000 BORDEAUX Les Amis du Ferret 36, Cours du Médoc 33000 BORDEAUX Lous GOUYATS de L'ADOU 25, rue du Toro 40100 DAX SERVICE CONTENIR Désignation Prix Quantité Location PV 7,50 30 Location 420 15,00 42 Location Catamaran 17,00 97 Hébergement 15,00 37 Repas 7,50 25 Petit Déjeuner 2,00 5 Location VTT 7,00 10 Le jeu d essai précédent vous permet de mettre en évidence l absence de liens entre tables. Il manque donc les clés primaires. On appelle clé primaire un attribut (colonne) d une table qui permet d'identifier de façon unique, une occurrence (ligne) d une table. Une clé primaire doit être : unique ; non nulle ; et stable dans le temps. Jacques Chambon 8/9

Troisième représentation graphique Chaque Entité doit posséder une clé primaire. Une clé primaire est un attribut existant ou un code qui permet d obtenir plus facilement le critère d unicité. Dans notre exemple comme plusieurs clients peuvent avoir le même nom, nous préfèrerons les identifier (une clé primaire est aussi appelée identifiant) par un numéro unique (code client) attribué par le Centre. L en sera de même pour les services. FACTURE Numéro date commentaire 1,1 Adresser CONTENIR Quantité CLIENT Code Client Raison sociale ou nom Adresse Code Postal Ville SERVICE Code service Désignation Prix Clés étrangères : elles n apparaissent pas de façon explicite dans le modèle : elles se traduisent par les liens. On appelle clé étrangère un attribut qui est clé primaire dans une autre table. Elles apparaissent par contre dans la vision en «Extension». Deux cas peuvent exister : Association UN à PLUSIEURS : la clé primaire de l Entité «du coté PLUSIEURS» devient la clé étrangère de l Entité «du coté UN».(on dit qu elle remonte). Association PLUSIEURS à PLUSIEURS : les clés primaires de chaque Entité «remontent dans l association nommée pour donner une clé primaire composée. Jacques Chambon 9/9