Bases de Données. MySQL Bachelor. Denis SIVORI

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

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

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

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

Rappel sur les bases de données

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

Bases de données Outils de gestion

Introduction aux Bases de Données

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

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

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

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)

Master I Génie Logiciel

Bases de données relationnelles : Introduction

CESI Bases de données

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Bases de données relationnelles

Mercredi 15 Janvier 2014

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

INTRODUCTION AUX BASES de DONNEES

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

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

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 cours 1

Bases de Données. Plan

Introduction aux Bases de Données

Les bases de données

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

Introduction aux bases de données: application en biologie

PostgreSQL. Formations. Calendrier... 14

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

CQP ADMINISTRATEUR DE BASES DE DONNÉES (ABD)

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

Conception, architecture et urbanisation des systèmes d information

Bases de Données Avancées

Bases de données élémentaires Maude Manouvrier

CHAPITRE 1. Introduction aux bases de données

Gestion des bases de données

UE 8 Systèmes d information de gestion Le programme

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

Cours Bases de données

Cours de bases de données. Philippe Rigaux

SQL MAP. Etude d un logiciel SQL Injection

IT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr

Base de Données et Langage SQL

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

PostgreSQL. Formations. SQL avancé Calendrier... 18

Les bases de données Page 1 / 8

Les BASES de DONNEES dans WampServer

Bases de données avancées Introduction

Conception d une base de données

Pratique et administration des systèmes

1 Introduction et installation

Méthode d analyse Merise

Dossier I Découverte de Base d Open Office

Le "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique

Introduction aux SGBDR

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

Principes de la conception des bases de données

Séance 1 Introduction aux bases de données

Visual Paradigm Contraintes inter-associations

Le langage SQL Rappels

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

SQL Historique

Bases de données. Chapitre 1. Introduction

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

INITIATION AUX BASES DE DONNEES MODELISATION et LANGAGE SQL

PostgreSQL. Formations. Catalogue Calendrier... 8

Business Intelligence avec SQL Server 2012 Maîtrisez les concepts et réalisez un système décisionnel

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

CHAPITRE 1 ARCHITECTURE

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

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

Introduction à MySQL (ou MySQL en 3 heures montre en main)

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

Business Intelligence avec SQL Server 2014 Maîtrisez les concepts et réalisez un système décisionnel

Introduction aux bases de données

PostgreSQL, le cœur d un système critique

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Comprendre Merise et la modélisation des données

Projet Business Object

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

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

Documentation d information technique spécifique Education. PGI Open Line PRO

CREATION WEB DYNAMIQUE

Projet de synthèse PostgreSQL. LOGEON Vincent TSGERI 2011/2012

Chapitre 11 Bases de données

Gestion des bases de données (1 ère partie)

A. Définition et formalisme

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Développement de base de données Microsoft SQL Server Durée : 5 jours Référence : DPSQL12. Contenu

Les entrepôts de données

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

La méthode MERISE (Principes)

Introduction à la B.I. Avec SQL Server 2008

En date du 11 décembre 2008

Transcription:

Bases de Données MySQL Bachelor 1 Denis SIVORI

Objectif Acquérir en 3 sessions de cours, les notions de base et les applications pratiques de MySQL 2

Détail de l objectif Il demandé d avoir acquis à la fin du module, les connaissances nécessaires à l utilisation d une base de données par un non-spécialiste : Terminologie et vocabulaire, Compréhension des mécanismes d une base de données, Modélisation d une base de donnée, Spécificité de MySQL, Utilisation d une interface graphique, Création d une base de données avec différentes méthodes, Manipulation des données : insertion, mise-à-jour, suppression, interrogation de données. 3

Agenda Cours : 17 octobre 2017 26 octobre 2017 16 novembre 2017 Soutenance du projet : 15 février 2018. 4

Introduction Contexte Types d utilisation Fonctionnalités Types de bases de données Bases de données relationnelles Systèmes de gestion de bases de données Niveaux d abstraction Langage SQL 5

Contexte Les données sont omniprésentes autour de nous. Dans la vie de tous les jours : Relevés bancaires, horaires de trains, Facebook, Gmail, wikipédia, allocine, Dans l entreprise : Clients, produits, commandes, factures, RH, Différence entre donnée et information. Donnée : information formatée/codée La donnée : Enjeu économique des entreprises. 6

Utilisation des bases de données Site internet dynamiques, Base de données d entreprise, Logiciels métier, Applications mobiles, Les bases de données sont partout. 7

Fonctionnalités d une base de données Convertir l information en données Structurer les données Contrôler la redondance des données Représenter des relations complexes entre les données Vérifier les contraintes d'intégrité Maintenir les données à jour Sécuriser l accès aux données Partager les données Assurer l indépendance des données Exploiter de gros volumes de données 8

Types de bases de données Base de données (en : database) : Collection de données structurées, accessibles, sécurisées et mémorisées sur un seul support permanent. Il existe plusieurs type de base de données : hiérarchiques (1960), en réseau (1970), relationnelles (1980), multidimensionnelles (en étoile Business intelligence), objet-relationnelles (stockage d objets), XML Ce cours traitera des bases de données relationnelles. 9

Base de données relationnelle Une base de données relationnelle est un ensemble structuré de données comprenant des relations dynamiques entre les différents objets contenus dans les tables. Dans une base de données relationnelle, un produit peut, par exemple, être liée à des fournisseurs et des acheteurs. 10

Système de gestion de bases de données Un Système de Gestion de Bases de Données (SGBD) est un outil (logiciel) qui permet de créer, utiliser et maintenir une base de données (BdD) : Organisation des données, Gestion des données, Accès aux données. SGBD 11

Exemples de SGBD Il existe de nombreux Systèmes de Gestion de Bases de Données. Systèmes propriétaires (licence) : Oracle, Microsoft SQL Server, DB2, Access, Systèmes Open Source : MySQL, PostgreSQL, SQLite, MariaDB 12

SQL L exploitation d une base de données relationnelle se fait à l aide d un langage informatique normalisé, le SQL. SQL : Structured Query Language, en français : langage de requêtes structuré Il est utiliser pour : la définition de données (DDL,Data Definition Language) : créer, modifier ou supprimer des tables la manipulation de données (DML, Data Manipulation Language) : de sélectionner, insérer, modifier ou supprimer des données dans une table le contrôle de données (DCL, Data Control Language) : de définir des permissions au niveau des utilisateurs d'une base de données Les systèmes de gestion de bases de données utilisent des IHM interfaces homme/machine 13

Niveaux d abstraction On distingue plusieurs niveaux de représentation ou d abstraction des bases de données : niveau conceptuel Appelé aussi modèle Entité-Relation, le MCD (modèle conceptuel des données) permet de représenter la structure des données et de définir les dépendances ou relations entre les données. niveau logique Dérivé du MCD, le MLD (modèle logique des données) définit la structure de données et précise le type de données utilisées. niveau physique Le MPD (modèle physique des données) implémente le modèle de données dans le SGBD en utilisant le langage SQL. 14

Démarche de construction d une BdB MCD Modèle conceptuel de données MLD Modèle logique de données MPD Modèle physique de données 15

Ce qu il faut retenir Information vs donnée La donnée = enjeu Un BdD pour structurer, stocker et sécuriser les données BdD relationnelle = ensemble structuré ou les objets ont des relations dynamiques entre eux SGBD exploite les BdD : organisation, gestion et accès aux données Le langage SQL : définition (LDD), manipulation (LMD) et contrôle (LCD) des données Modèle conceptuel Modèle logique Modèle physique 16

Modélisation conceptuelle Règles d or Concepts de base Entité, attribut, identifiant Association Cardinalité Types d association Entité faible, forte Exercice 17

Introduction Le modèle relationnel, aussi appelé le modèle Entité/Association (E/A) ou Entité/Relation est utilisé pour la conception de bases de données relationnelles. Le modèle conceptuel de données (MCD) est la représentation des relations entre les entités. Client Achète Article 18

Modélisation : règles d or Il n'existe pas de modèle de données idéal Plusieurs moyens pour répondre à un besoin Le modèle doit correspondre à un besoin précis Toute redondance est interdite Les données doivent être uniques et stockées une seule fois Un modèle de données doit être évolutif mais aussi suffisant pour le besoin 19

MCD : Concepts de base Les concepts de base du modèle conceptuel de données sont : Entité Attribut Identifiant Association Cardinalité Définition: Une occurrence est un élément particulier d une entité ou d une association. Ex : le client "Jean Dupont" est une occurrence de l entité client. La conception d un MCD est essentielle : la structure des données est le fondement de tout, une erreur à la conception est difficilement récupérable ensuite. 20

Entité, attribut, identifiant Une entité peut être définie comme un objet concret ou abstrait du monde réel à modéliser Ex : client, produit, article, Un attribut est une propriété distinctive d une entité ou d une association. Ex : le nom d un client est un attribut de l entité client. Un identifiant est une propriété ou groupe de propriétés qui sert à identifier une entité Ex : le numéro client permet d identifier de manière unique un client. 21

Entité : représentation Personne Numéro de sécurité Civilité Nom Prénom Date de naissance Entité identifiant attribut 22

Association Une association peut être définie comme un lien reconnu ou possible entre les entités Une association peut avoir des attributs. Ex : l'association "achète" lie les entités "clients" et "articles". Convention : une entité est représentée par un nom une association est représenter par un verbe un identifiant est souligné Client Référence Nom Achète 23 Article Code article Prix

Association : cardinalité La cardinalité d une association est constituée d une borne minimale et d une borne maximale Minimale : nombre minimum de fois qu une occurrence de l entité participe aux occurrences de l association, 0 (optionnel) ou 1 (obligatoire) Maximale : nombre maximum de fois qu une occurrence de l entité participe aux occurrences de l association, 1 (unique) ou n (multiple) Client Achète Article 0,3 1,1 La cardinalité 0,3 indique qu un client peut être associé à 0, 1, 2, 3 articles. Il peut acheter 3 articles maximum 24 La cardinalité 1,1 indique qu un article ne peut être acheté que par un seul client.

Les types d associations Association "1 1" A une occurrence de l'entité E1 peut correspondre au plus une occurrence de l'entité E2, et vice versa. Enfant Identifiant Prénom (1,1) (1,1) possède mère Identifiant Prénom Un enfant a une et seule seule maman. 25

Les types d associations Association "1 - n" (un à plusieurs) : A une occurrence de l'entité E1 peuvent correspondre plusieurs occurrences de l'entité E2, mais à une occurrence de l'entité E2 peut correspondre au plus une occurrence de l'entité E1. Mère Identifiant Prénom (1,n) (1,1) possède Une mère a 1 ou plusieurs enfants Enfant Identifiant Prénom femme Identifiant Prénom (0,n) (1,1) possède Une femme peut avoir 1 ou plusieurs enfants 26 Enfant Identifiant Prénom

Les types d associations Association "n - n" (plusieurs à plusieurs) : A une occurrence de l'entité E1 peuvent correspondre plusieurs occurrences de l'entité E2, et vice versa. Client Identifiant Nom (1,n) commande (1,n) Produit Identifiant Prix Plusieurs clients peuvent commander plusieurs produits 27

Entité faible, entité forte Une entité faible est toujours identifiée par rapport à une entité forte. Exemple : Une maison comporte plusieurs pièces. Une pièce est une partie de la maison. Pas de pièce sans maison. Maison comporte Pièce 28

Exercice Pour organiser son catalogue de CD et le présenter sur son site internet, un magasin de disque veut créer une base de données qui lui permettra d enregistrer le contenu de tous les CD qu il propose à la vente. Le commerçant veut pouvoir éditer la liste de tous les artistes, tous les titres (chansons) et le sommaire de chaque CD. Réalisez le modèle conceptuel de données nécessaire à la création de la base de données. 29

Solution CD Référence CD Titre_CD (1,n) Contient (0,n) Chanson Identifiant chanson Titre_chanson (0,1) Chante (0,n) Artiste Identifiant artiste Nom_artiste 30

Ce qu il faut retenir Définition du modèle Entité/Association ou Entité/Relation Le MCD est essentiel Les règles d or Définition et terminologie des éléments du MCD (entité, attribut, identifiant, associations, cardinalité, ) Les différents types d associations Savoir établir un MCD 31

Modélisation logique Traduction des entités Traductions des relations un à un un à plusieurs plusieurs à plusieurs 32

Le modèle logique de données MCD Modèle conceptuel de données MLD Modèle logique de données Le modèle logique de données est la déclinaison du modèle conceptuel de données. 33

Traduction de l entité Chaque entité du MCD devient une table, Chaque identifiant devient une clé, Chaque attribut devient un champ typé (texte, date, nombre, ) MCD Maison identifiant maison adresse MLD id_maison adresse MAISON [int] [txt] table clé champ 34

Traduction de la relation Association de un à un Ce type d'association est est proscrire. Une association de un à un entre une entité A et une entité B revient à décrire une entité qui aurait les propriétés des entités A et B. M C D Personne Id_personne (1,1) (1,1) possède N SECU Id_num_SECU M L D PERSONNE id_personne Numéro_SECU [int] [txt] table clé champ 35

Traduction de la relation Association de un à plusieurs Une occurrence de l'entité A (maison) référence l occurrence de B (pièce) qui lui est associée à l aide d une clé étrangère. Cette référence se fait de manière unique et suffisante à l aide de l identifiant. M C D Maison id_maison adresse (1,n) (1,1) comporte Pièce id_piece surface M L D id_maison adresse MAISON [int] [txt] table clé champ PIECE id_piece FKid_maison surface [int] [int] [int] clé étrangère 36

Traduction de la relation associations de plusieurs à plusieurs Une table de liaison est utilisée pour lier les entités A et B. Un identifiant est nécessaire pour identifier la liaison qui comporte comme attributs les identifiants des entités liées. M C D personne identifiant nom (1,n) habite (1,n) adresse identifiant rue M L D PERSONNE id_personne nom [int] [txt] habite id [int] FKid_adresse [int] FKid_personne [int] id_adresse rue ADRESSE [int] [txt] 37

Exercice Réalisez le modèle logique de données de l exercice précédent. CD Référence CD Titre_CD (1,n) Contient (0,n) Chanson Identifiant chanson Titre_chanson (0,1) Chante (0,n) 38 Artiste Identifiant artiste Nom_artiste

Solution MLD : id_cd titre_cd CD [Int] [txt] CONTIENT FKid_cd FKid_chanson [Int] [Int] CHANSON id_chanson [Int] titre_chanson [txt] FKid_artiste [Int] duree [int] ARTISTE id_artiste nom _artiste [Int] [txt] 39

Ce qu il faut retenir Comment traduire les entités d un MCD dans un MLD Comment traduire les associations d un MCD dans un MLD : Association "1 à 1" à proscrire Association "1 à plusieurs" Association "plusieurs à plusieurs" Savoir établir un MLD 40