Bases de données Modèles de calcul Introduction Agenda • Introduction • Bases de données (BD) – BD: Relationnelles – SGBD: SQL – Conception: Entité-association • Modèles de calcul – Feuille de calcul – Excel – modèles de calcul 2 BD - Objectifs ACCESS Fournir • des concepts et des méthodes • pour analyser des problèmes • et construire des solutions – prises en charge par des SGBD (système de gestion de bases de données: par exemple Access ou Oracle) 3 Construction d’une base de données Énoncé Analyse conceptuelle Schéma conceptuel Production du schéma de la BD Schéma SQL 4 BD - Construction d’une BD découpler l’analyse de l’implantation: • analyse: schéma conceptuel de la BD – solution abstraite • indépendante de la technologie – formalisme “Entité-Association” (Chen) • implantation: structure de tables – langage SQL 5 BD - Conception de schémas (exemple) • Un patient possède un numéro de dossier unique, un nom, une adresse et un numéro de téléphone. • Un patient est suivi par un médecin généraliste, caractérisé par un numéro de matricule, son nom et un numéro de téléphone Patient NumDossier Nom Adresse Téléphone 1-1 Suivi 0-N Généraliste Matricule Nom Téléphone • Un patient peut s’adresser aux policliniques pour obtenir des consultations auprès de médecins spécialistes. Une consultation est effectuée à une date donnée et dans une policlinique donnée, par un médecin spécialiste • Seules les consultations sur rendez-vous, donc obtenues à une date antérieure à celle de la consultation, sont admises • Etc. .. 6 BD - Schéma Entité-Association (exemple) Patient Généraliste NumDossier Nom 1-1 Suivi 0-N Matricule Nom Adresse Téléphone Téléphone 0-N Consultation DateConsultation DatePriseRV 0-N 0-N Policlinique Nom Spécialiste Localité 0-N Téléphone id: Nom Emploi 0-N Matricule Nom Spécialités[1-N] Localité 7 BD - Fichiers de données • gestion et consultation de données – répertoire d’adresses, références bibliographiques, catalogue de pièces, … • les données – sont rangées dans des fichiers – et sont structurées en enregistrements – Constitués de champs 8 BD – de la structure plate au relationnel • pour des données dont la structure est plus complexe • afin de garantir – – – – – la qualité des données enregistrées leur cohérence et leur intégrité leur protection en cas d’incident leurs accès simultanés et leur partage leur confidentialité – Indépendance des données relationnelles 9 BD - SGBD relationnels • une base de données (BD) relationnelle – apparaît comme une collection de tables (fichiers plats) – cache les détails techniques d’implantation – accessible par SQL (Structured Query Language) • • • • créer des tables ajouter des colonnes ranger, modifier & consulter des données définir des droits d’accès CLIENT NOM • Informix, DB2, Unify, Sybase, ORACLE, Access, ... • Codd (1970) HANSENNE MERCIER MONTI TOUSSAINT VANBIST VANDERKA GILLET GOFFIN FERARD ADRESSE 23, a. Dumont 25, r. Lemaitre 112, r. Neuve 5, r. Godefroid 180, r. Florimont 3, a. des Roses 14, r. de l’Eté 72, r. de la Gare 65, r. du Tertre LOCALITE COMPTE Poitiers 1’250.00 Namur -2’300.00 Genève 0.00 Poitiers 0.00 Lille 720.00 Namur -4’580.00 Toulouse 8’700.00 Namur -3’200.00 Poitiers 350.00 10 BD - Transformation de schémas (exemple) Entité-association Relation (SQL) DEPARTEMENT DEPARTEMENT Nom Adresse Nom Adresse 0-N Occupe 1-1 EMPLOYE Matricule Nom Fonction EMPLOYE Matricule Nom Fonction DptNom 11 BD - Relations PIECE NUMP 14 57 15 LIVRE TYPE boulon écrou boulon FOURNISSEUR NUMF 152 174 81 376 259 46 NOMF MERCIER CHARLES DUMONT RENIER CHARLES GARCIN VILLEF NUMFL NUMPL PRIX 152 174 152 81 81 152 46 46 15 57 14 14 15 57 15 57 46. 32. 62. 65. 48. 34. 46. 32. Tours Nevers Paris Nevers Liège Paris 12 BD – Structured Query Language standard SQL CLIENT NOM HANSENNE MERCIER MONTI TOUSSAINT VANBIST VANDERKA GILLET GOFFIN FERARD ADRESSE 23, a. Dumont 25, r. Lemaitre 112, r. Neuve 5, r. Godefroid 180, r. Florimont 3, a. des Roses 14, r. de l’Eté 72, r. de la Gare 65, r. du Tertre LOCALITE COMPTE Poitiers 1’250.00 Namur -2’300.00 Genève 0.00 Poitiers 0.00 Lille 720.00 Namur -4’580.00 Toulouse 8’700.00 Namur -3’200.00 Poitiers 350.00 AVANT SELECT nom, adresse, localite, compte FROM client WHERE localite = ‘Namur’ NOM APRES MERCIER VANDERKA GOFFIN CLIENT ADRESSE LOCALITE 25, r. Lemaitre Namur 3, a. des Roses Namur 72, r. de la Gare Namur COMPTE -2’300.00 -4’580.00 -3’200.00 13 Access Tables 14 Access Table Clients 15 Access Schémas 16 Access Requête SQL 17 Access Requête QBE 18 Access Formulaire 19 Access Rapport 20 BD - Structure du cours • les concepts – tables, colonnes, identifiants et contraintes • les outils – langage SQL • les méthodes de conception – modélisation Entité-Association – dérivation des tables SQL • des études de cas 21 Modèles de calcul - Objectifs EXCEL Fournir • des concepts et des méthodes • pour analyser des problèmes • et construire des solutions – prises en charge par des TABLEURS (par exemple Excel) 22 Modèles de calcul - Construction Énoncé Conception du modèle Modèle abstrait Implantation du modèle Feuille de calcul 23 Modèles de calcul - Conception données & résultats Données ancienneté, niveau, primes, index Résultats brut cotisation_sociale net_imposable retenue_fiscale net_payé 24 Modèles de calcul - Conception règles (équations) Règles brut = (br(ancienneté,niveau) + primes) * index cotisation_sociale = (0.1 + niveaux/100) * brut net_imposable = brut - cotisation_sociale retenue_fiscale = net_imposable * (0.1 + min(0.4, net_imposable/50000)) net_payé = net_imposable - retenue_fiscale 25 Modèles de calcul - Implantation données de base données résultats 26 Modèles de calcul - Implantation règles (formules) règles 27 Modèle de calcul - Structure du cours • formalisme conceptuel – grandeur, règle, contrainte • spécification conceptuelle – modèle abstrait entité-association relationnel • formalisme concret – feuille de calcul, cellule, formule, macro • spécification concrète SQL – feuille de calcul EXCEL 28 Merci de votre attention ! 29