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



Documents pareils
Information utiles. webpage : Google+ : digiusto/

Les bases de données

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

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

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

Bases de données relationnelles

Bases de données élémentaires Maude Manouvrier

16H Cours / 18H TD / 20H TP

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

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

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

1 Introduction et installation

Dossier I Découverte de Base d Open Office

Introduction aux Bases de Données

Les bases de données Page 1 / 8

Mercredi 15 Janvier 2014

Conception d une base de données

Le langage SQL Rappels

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

Rappel sur les bases de données

Bases de données relationnelles & SQL

Bases de Données. Plan

I4 : Bases de Données

Base de Données et Langage SQL

LE MODELE CONCEPTUEL DE DONNEES

Présentation du module Base de données spatio-temporelles

Bases de données relationnelles : Introduction

INTRODUCTION : Données structurées et accès simplifié

Méthode d analyse Merise

Modélisation des données

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

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

CESI Bases de données

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

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

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

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

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

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

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

La problématique de la Préservation des Bases de Données. Olivier ROUCHON CINES Groupe PIN Jeudi 7 Octobre

Introduction aux Bases de Données

CREATION WEB DYNAMIQUE

Gestion des bases de données

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

Bases de données avancées Introduction

CHAPITRE 1. Introduction aux bases de données

Le Langage SQL version Oracle

Master I Génie Logiciel

Bases de données cours 1

UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE

INTRODUCTION AUX BASES de DONNEES

Langage SQL : créer et interroger une base

A QUOI SERVENT LES BASES DE DONNÉES?

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

Vincent Augusto

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

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

Séance 1 Introduction aux bases de données

Bases de Données Avancées

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Bases de données - Modèle relationnel

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

INITIATION AUX BASES DE DONNEES MODELISATION et LANGAGE SQL

SQL Historique

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

Objectifs du TP : Initiation à Access

Le langage SQL (première partie) c Olivier Caron

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Modèle conceptuel : diagramme entité-association

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de données Outils de gestion

Introduction aux SGBDR

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

PHP 5. La base de données MySql. A. Belaïd 1

Modèle Entité/Association

Introduction aux bases de données: application en biologie

Patrice BOURSIER. Professeur, Univ. de La Rochelle. Bases de Données. Notes de cours

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

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

MODE OPERATOIRE OPENOFFICE BASE

Cours Bases de données

Merise. Introduction

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

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

Comprendre Merise et la modélisation des données

Cours 1 : introduction

Introduction aux bases de données

Chap. 2: L approche base de données

MERISE. Modélisation et Conception de Systèmes d Information

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

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

TP Bases de données réparties

IFT3030 Base de données. Chapitre 1 Introduction

Transcription:

Exemple accessible via une interface Web Une base de données consultable en ligne : Bases de données et systèmes de gestion de bases de données The Trans-atlantic slave trade database: http://www.slavevoyages.org/tast/index.faces Voir notamment «The African Name Database» et le lien avec la vue sur les voyages Master IPH - EC IPH73C - 03 Master IPH - EC IPH73C - 03 Généralités Définitions Fichiers manuels : idée de la boîte de fiches Tenir à jour des fichiers manuels : une activité «vieille comme le monde» Possibilités nouvelles offertes par l informatique, mais aussi nouvelles contraintes (Wikipedia) Une base de données est un lot d informations stockées dans un dispositif informatique (Une définition plus précise) Une base de données est un ensemble de données structurées, fiables, cohérentes, partagées par des utilisateurs ayant des besoins différents. Un système de gestion de bases de données (SGBD) est un logiciel permettant de gérer et de manipuler une base de données. Master IPH - EC IPH73C - 03 3 Master IPH - EC IPH73C - 03 4 Bases de données : des besoins et des objectifs divers Préoccupations majeures : Cohérence et consistance des données Non redondance, car la redondance est source d incohérences Intégrité des données, pas de données inaccessibles Une base de données s appuie sur un modèle logique : Ce qui est stocké dans la base de données est vrai Ce qui ne s y trouve pas est faux (hypothèse du monde clos) Exemples : base de données des horaires de la SNCF, catalogue d une bibliothèque Systèmes documentaires : gros volumes de données, informations stables, Bases de données d annuaires : le carnet d adresse de votre logiciel de mail, l annuaire LDAP de l UBO D autres exemples : Apogée, logiciels de comptabilité/gestion, horaires SNCF, etc : utilisent des SGBDR (systèmes de gestion de bases de données relationnelles) Master IPH - EC IPH73C - 03 5 Master IPH - EC IPH73C - 03 6

Idées essentielles présentes dans la définition: Stockage des données indépendant des traitements Utilisateurs ayant des besoins différents, se connectant à l aide d outils variés Différents outils à disposition des utilisateurs : vues sur la base de données, front-end,. Données Moteur de base de données Interface de communication (plus ou moins normalisée) Front-end, Interface utilisateur, Logiciel métier Master IPH - EC IPH73C - 03 7 Master IPH - EC IPH73C - 03 8 Exemples de SGBDR (ou presque relationnels) Des outils comportant un «front end» intégré : Microsoft Access, Filemaker Pro, OpenOffice Base, 4 ème Dimension Moteurs de bases de données : Oracle, Microsoft SQL Server, Interbase, MySQL, SQLite, etc Plusieurs composants assemblés : MySQL + PHP MyAdmin Outils d interrogation sans moteur de base de données: Microsoft Query, logiciels de Statistiques tq Statistica Logiciels «métiers» s appuyant sur un SGBDR : logiciels de traitement d enquête tels que Sphinx ou ModaLisa SGBDR Un système de gestion de bases de données relationnel est un SGBD permettant de manipuler le contenu de bases de données relationnelles. Une base de données relationnelles est une BD organisée selon les principes de l algèbre relationnelle. Algèbre relationnelle : développée notamment par Edgar F. Codd entre 965 et 975 Master IPH - EC IPH73C - 03 9 Master IPH - EC IPH73C - 03 0 Modèle relationnel - Algèbre relationnelle Schéma de la table «Mes Amis» Un seul type d objet : les tables ou relations Schéma d une relation, extension de la relation Opérations sur les tables : ajout ou suppression de n- uplets, sélection, projection, jointure Créer une relation (ou table) : lui donner un nom, et définir ses attributs et leurs types L un des attributs a un rôle particulier : identifiant ou clé, clé primaire Mes Amis (, Rue, Ville, CP, Téléphone) Extension de la table : Dupond Duval Durand Martin Rue Rue du Lac Place de la Gare Rue du Lac Rue de Ville Quimper Morlaix CP 900 900 9000 9300 Tél 43 44 45 44 4 80 4 35 56 67 89 43 Master IPH - EC IPH73C - 03 Master IPH - EC IPH73C - 03

Projection sur un ensemble d attributs : ne conserver que les colonnes correspondant à ces attributs et supprimer les doublons éventuels. Exemple : «Les villes dans lesquelles j ai des amis» Sélection selon une condition: ne conserver que les n-uplets satisfaisant la condition. Exemple : sélectionner «mes amis brestois». La condition est alors: Ville=. Ville CP Rue Ville CP Tél Quimper Morlaix 900 9000 9300 Dupond Duval Rue du Lac Place de la Gare 900 900 43 44 45 44 4 80 Master IPH - EC IPH73C - 03 3 Master IPH - EC IPH73C - 03 4 Jointure entre deux tables sur un attribut commun : schéma obtenu par «réunion» des deux schémas. N-uplets obtenus en concaténant les n- uplets de chacune des deux tables pour lesquels l attribut a la même valeur. Bâteau (Id-Bat,, Nationalité) Id-Bat 3 Formiga Jeune Louis Xerxes Voyage (Id-Voyage, Date, Bateau) Nationalité Portugal France Espagne Jointure sur les attributs Id-Bat et Bateau : Id- Voyage V V V3 Date 8 85 86 Bateau=Id-Bat Formiga Jeune Louis Jeune Louis Nationalité Portugal France France Id-Voyage Date Bateau V V V3 8 85 86 Master IPH - EC IPH73C - 03 5 Master IPH - EC IPH73C - 03 6 Autres opérations : réunion, intersection, etc. Structured Query Language (SQL) Comportement particulier de toutes ces opérations vis-à-vis des valeurs vides ou manquantes : Un texte manquant est en général différent du texte vide Une valeur numérique vide n est pas 0 Par exemple, dans une jointure, que fait-on des lignes de l une des tables qui n ont pas de ligne correspondante dans l autre table? jointure interne : elles ne figurent pas dans le résultat jointure externe : elles y figurent Un langage conforme aux règles de l algèbre relationnelle, utilisé par les moteurs des SGBDR, assez bien standardisé : SQL. Exemples de requêtes : CREATE TABLE truc (.) ; INSERT into truc VALUES ( ) ; SELECT champ, champ, FROM truc ; JOIN Master IPH - EC IPH73C - 03 7 Master IPH - EC IPH73C - 03 8 3

Concevoir une base de données Première méthode : algèbre relationnelle, dépendances fonctionnelles et théorie des formes normales On a circonscrit un domaine du monde réel. Les objets du monde réel sont représentés par des données Notre problème : Comment structurer ces données pour les inclure dans une base de données satisfaisant aux critères de consistance, cohérence, non-redondance? Quelle structure conceptuelle pour nos données? Quelle méthode de modélisation appliquer? On forme une table rassemblant l ensemble des données manipulées. On utilise des règles (formes normales) pour scinder certaines colonnes, décomposer la table initiale en plusieurs tables plus petites, liées par des jointures, introduire des clés dans chacune de ces tables, etc. - Dépendances fonctionnelles : B dépend fonctionnellement de A si la connaissance de A induit celle de B. - Formes normales Première forme normale : pas d attribut multivalué Deuxième forme normale : tout attribut non clé dépend fonctionnellement de la (ou des) clés Master IPH - EC IPH73C - 03 9 Master IPH - EC IPH73C - 03 0 Deuxième méthode : modèle entitésassociations Informations et données Peter Chen, Hubert Tardieu (970, 980) «Schématiser» les informations du monde réel, les structurer, avec un double objectif : Respecter leur sémantique, leur signification dans le monde réel Permettre la traduction de cette schématisation sous forme d un schéma de base de données. Résultat : un MCD ou modèle conceptuel des données Pour illustrer la démarche : l exemple que nous traiterons ensuite sous Access : L enquête agricole de 85. Lien : http://acrh.revues.org/index3696.html Dans le monde réel : des informations, contenues dans des rubriques de documents. Voir, pour notre exemple : http://acrh.revues.org/3697?file= Donnée : forme «normalisée» d une information présente dans une rubrique de document. Master IPH - EC IPH73C - 03 Master IPH - EC IPH73C - 03 «Qualités» d une donnée Types de données Donnée élémentaire ou donnée composée : nom, prénom sont des données élémentaires, identité (sous la forme nom + prénom) est une donnée composée. Donnée de base ou donnée calculée: une donnée calculée peut être retrouvée à partir d autres données, à l aide d un «calcul». Ne pas confondre donnée calculée et donnée numérique Type «texte de longueur fixe» ou alphanumérique Type «nombre» (entier, nombre réel, ) Type «texte de longueur libre» ou «memo» Type booléen (vrai/faux, oui/non) Type «date» ou «date / heure» Type «objet externe» ou binaire (par exemple un fichier, une image, etc) Master IPH - EC IPH73C - 03 3 Master IPH - EC IPH73C - 03 4 4

Dictionnaire des données Données et entités Recensement des données manipulées dans le domaine étudié : attribuer à chaque donnée un nom, un type, une description -> constituer un dictionnaire des données. Sur notre exemple : utiliser les fichiers descriptif-detaille.xls et Enquete- Agricole-Cereales.xls Certaines données se regroupent naturellement car elles correspondent à un même objet du monde réel : ce sont des attributs d une même entité. Sur notre exemple : - Des départements - Des arrondissements ou cantons - Des céréales - (peut-être) des productions Master IPH - EC IPH73C - 03 5 Master IPH - EC IPH73C - 03 6 Représentation des entités Associations entre entités Département No-Dept Dept Canton Id-Canton Chef-lieu Un canton fait partie d un département : :n,,n Canton Fait partie de Département Céréale Id-Céréale Libellé Un canton produit des céréales : n:m 0,n 0,n Canton produit Céréale Master IPH - EC IPH73C - 03 7 Master IPH - EC IPH73C - 03 8 Attributs d associations Un canton produit des céréales : n:m 0,n 0,n Canton produit Céréale Nb Hectares Qté Semence Produit par ha etc. Une entité est une collection homogène d occurrences d entité. Une occurrence d entité est un exemplaire différentiable et identifiable d une chose, d une personne ou d un concept abstrait pour lequel on doit gérer des informations significatives Les liens entre les entités, qui s expriment souvent par des verbes, sont modélisés par des associations entre les entités. Master IPH - EC IPH73C - 03 9 Master IPH - EC IPH73C - 03 30 5

Cardinalités des associations Validation du MCD, -, ou, - 0, :un à un,,n : hiérarchique totale, 0,n ou 0,,n ou 0, 0,n : hiérarchique partielle,n,n ou 0,n,n ou 0,n 0,n : plusieurs à plusieurs Le MCD représente-t-il correctement le monde réel? Toutes les données du dictionnaire des données figurent-elles dans le MCD? Chaque donnée apparaît-elle bien une seule fois dans le MCD? Master IPH - EC IPH73C - 03 3 Master IPH - EC IPH73C - 03 3 Traduction du MCD dans le modèle relationnel Vocabulaire A chaque entité correspond une table Une association «plusieurs à plusieurs» ou une association faisant intervenir plus de entités se traduit par une table ayant pour attributs : Les clés des entités participantes Les attributs éventuels de l association Une association hiérarchique ou «un à un» peut souvent se traduire par l ajout de la clé de l entité du côté «n» à la table correspondant à l entité du côté «un». Algèbre relationnelle Relation ou table N-uplet Jointure SGBD (Access, OOBase, etc) Table Enregistrement Relation Type de relation Modèle entitésassociations Entité certaines associations Occurrence d entité Certaines associations Cardinalités Master IPH - EC IPH73C - 03 33 Master IPH - EC IPH73C - 03 34 6