Base de Données M Cieloski BASE DE DONNEES I Concepts de base : C’est un système d’information, ce que l’on peut en voir au travers d’un SGDB1 3 couches d’un SGBD : système de gestion de fichiers. Système de gestion de fichiers SGBD Interne SGBD Externe Caractéristiques : Indépendance Physique : pas à se soucier de la machine sur laquelle on travaille, ni des méthodes d’accès. Pas nécessaire de réécrire les application si on change de système. Indépendance Logique : possibilités d’offrir une vue sur les informations, droits d’accès. Rend possible la manipulation des données par des non informaticiens. Accès efficaces aux données (les SGBD sont pourvu d’algorithmes performants) Administration centralisées des données (permettent de vérifier la cohérence des données) Outils de sauvegarde des données. Non redondances des données (éviter la duplication des données) Assurer la cohérence des données. Gérer les concurrences d’accès Pouvoir doter le système d’information de prise en charge de la sécurité. OFFRE non Exhaustive de SGBD : DB 2 SYBASE INGRES ACCESS Visual DB FileMaker 1 ORACLE SQL Server INFORMIX PARADOX FOXPRO 4D O2 Gemstore ObjectStore JASMIN Orientés Objet SGBD : système de gestion de bases de données 1 Base de Données M Cieloski II Les niveaux de description d’une base de données : Norme ANSI / X3 / SPARC 1796 3 niveaux de description - Niveau Conceptuel : MERISE - Niveau Interne : permet de qualifier les structures de stockage Caractéristiques des données (type et longueur…) - Niveau Externe Description des vues sur les données Schéma Externe Schéma Externe Schéma Conceptuel Schéma Interne MODELISATION DES DONNEES : MERISE : Modélisation et séparation des traitements des données. Définitions : Notion de propriété : données élémentaire et indécomposable du système d’information (ex solde compte client) Notion d’Entité : représentation d’information ayant une existence matériel ou non conforme aux choix et aux règles de l’entreprise, l’entité est constituée d’une liste de propriétés. Notion d’Association : elle traduit dans un système d’information, un lien entre les différentes entités d’intervenants dans cette association caractérise sa dimension. Elle peut être réflexive, lorsqu’elle porte sur la même entité, binaire lorsqu’elle porte sur 2 entités, N’aire lorsqu’elle porte sur N entités. Remarque : Une association peut porter une priorité Il peut être important de chiffrer le volume d’informations. Une cardinalité caractérise le lien entre une entité et une association. Elle est constituée une borne minimale et d’une borne maximale. Cardinalité minimale : Le nombre minimal de fois qu’une occurrence d’une entité participe aux occurrences d’une association (dans la plupart des cas 0 ou 1) Cardinalité maximale : : Le nombre maximal de fois qu’une occurrence d’une entité participe aux occurrences d’une association (dans la plupart des cas 1 ou N) 2 Base de Données M Cieloski Association réflexive : Employé 0,1 Est chef 0,1 NOTION D’ IDENTIFIANT : est constitué d’une ou plusieurs propriétés d’une entité, de sorte qu’à chaque valeur de l’identifiant corresponde 1 et 1 seule occurrence de l’entité. Modèle Conceptuel d’une banque : Client, Employé, Banque, sachant qu’un employé peut gérer pour un même client plusieurs contrats et qu’un employé peut gérer plusieurs clients sur un même contrat. CLIENT EMPLOYE 1,n gére 1,n 1,n CONTRAT LE MODELE RELATIONEL : Dans un SGBD les données sont regroupées en tables, ces données correspondent à certaines règles de gestion des ensembles. Elles sont regroupées dans l’algèbre relationnelle. Un domaine : c’est un ensemble fini ou infini de valeurs possible. Le produit cartésien : d’un ensemble de domaine D1, D2,…, Dn qui s’associe dans D1 x D2 x…x Dn , c’est l’ensemble des tuple <V1, V2, … , Vn> qui pour l’exemple donne : D1= {Durand, Dupont} D2 = {Alain, John, Raoul} 3 Base de Données Personne D1 xD2 = M Cieloski C1 Durand Durand Durand Dupont Dupont … C2 Alain John Raoul Alain John … Attributs TABLE RELATIONNELLE : est un sous ensemble d’un produit cartésien d’une liste de domaine, elle est caractérisée par nom qui permet de l’identifier clairement Une base de données relationnelle est une BD dont le schéma est un ensemble de schémas de table relationnelle et dont les occurrences sont des tuples de cette base. LE PASSAGE DU MCD AUX TABLES RELATIONNELLES . Une fois le MCD écrit, on peut traduire en un modèle plus proche de la réalité. Le MLD2. Méthode : Chaque entité devient une table Chaque propriété devient colonne d’une table L’identifiant de l’entité devient la clé primaire Une association de cardinalité 0,n ; 0,1 provoque la migration d’une clé etrangère, c’est l’identifiant qui vient du coté 0,n, migre vers la table coté 0,1. Si les propriétés étaient portées sur l’association, elle vont migrer du coté 0,1. Exemple : ENT 1 A B 0,1 Assoc E 0,1 ENT 2 C D Passage du MCD au tables 2 TABLE 1 TABLE 2 A B C E C D MLD : Modèle Logique des Données 4 Base de Données M Cieloski Une association 0,n ; 0,n donne quant à elle naissance à une nouvelle table, les identifiants des entités vont migrer dans une autre table, la clé primaire de cette table va être constituée de la réunion des identifiants. Si les propriétés sont porte par cette association elle vont migrer dans cette table. Exemple : ENT 1 A B 0,n Assoc E 0,n ENT 2 C D TABLE 1 TABLE 3 TABLE 2 A B A C E C E 5