La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Bases de données et SGBD

Présentations similaires


Présentation au sujet: "Bases de données et SGBD"— Transcription de la présentation:

1 Bases de données et SGBD
ISFATES – L1 : UE Informatique1 Informatique Bases de données et SGBD Par Julien Brancher UFR MIM Université Paul Verlaine – METZ Version sept. 2006

2 PLAN DU COURS Introduction aux bases de données - SGBD
La modélisation de données Les tables Les cardinalités Les associations Exemples et exercice simple Les transactions SQL Principe et syntaxe générale Création d’objets Commandes de manipulations SQL Procédés de filtrage et de triage Exemple de requêtes SQL Les enregistrements La clé primaire Les clés étrangères

3 Introduction aux bases de données
Coeur du système d'information des entreprises Mainframes  ordinateurs personnels BD = grande quantité de données, centralisées ou non, servant pour les besoins d'une ou plusieurs applications, interrogeables et modifiables par un groupe d'utilisateurs travaillant en parallèle Système de Gestion de Bases de Données (SGBD) = logiciel Interface entre la base de données et les utilisateurs/programmes Les limites à l'utilisation des fichiers Connaître l'organisation des fichiers (séquentielle, indexée, ...) Ecriture des programmes pour manipuler ces informations  Rigidité et long et coûteux à mettre en œuvre Risque de création de fichiers qui contiennent des informations déjà présentes (redondance des données) Peu fiables : risque d’utiliser les mêmes fichiers Introduction aux bases de données

4 Introduction aux bases de données
Définitions Collection de données inter-reliées de façon structurée et cohérente Système de Gestion de Bases de Données (SGBD) : Ensemble de programmes qui permettent à des utilisateurs de créer et maintenir une base de données : Définition d'une base de données (spécification des types de données à stocker), Construction d'une base de données (stockage des données) Manipulation des données (principalement ajouter, supprimer, retrouver des données) Oracle, Sybase, Informix, DB2, MySQL, Access, InterBase, OooBase Le SGBD sépare la partie description des données, des données elles mêmes. Cette description est stockée dans un dictionnaire de données et peut être consultée par les utilisateurs.

5 Introduction aux bases de données
Pourquoi le modèle relationnel ? Ensemble de concepts permettant de décrire la structure d'une base de données Opérations de mise à jour Opérations de questionnement Modèle de données le plus utilisé Schéma de base de données = description des données à gérer Phase de spécification Peu évolutif

6 Introduction aux bases de données
Fonctionnalités des SGBD Description/récupération des données à l’aide de langages (SQL) Contrôler/supprimer la redondance d'informations Coût en temps Coût en volume Risque d'incohérence Partage des données Accès à la même information par plusieurs utilisateurs en même temps Mécanisme de contrôle de la concurrence basé sur des techniques de verrouillage des données Gérer les autorisations d'accès BD multiutilisateurs  confidentialité des données Droits de lecture, mise à jour, création, ... Représenter des relations complexes entre les données Vérifier les contraintes d'intégrité Assurer la sécurité et la reprise après panne Pannes disques : mécanisme de journalisation qui permet de régénérer une base de données automatiquement à partir d'une version de sauvegarde et du journal des mouvements.

7 La modélisation de données
C’est quoi la modélisation ? Un « modèle » est la représentation mentale d’un être du monde réel et de son fonctionnement : quand on dispose d’un modèle, on peut simuler mentalement le comportement de cet être. La modélisation, ce n’est donc rien d’autre que la pensée organisée en vue d’une finalité pratique  modèle est synonyme de théorie, mais avec une connotation pratique : un modèle, c’est une théorie orientée vers l’action qu’elle doit servir. Autrement dit, modéliser un objet c’est définir : Les concepts qui permettent de le décrire Les relations fonctionnelles qu’entretiennent ces concepts. La modélisation de données

8 La modélisation de données
Vocabulaire indispensable : Base de données : ensemble des tables Table (ou entité) : se compose d'enregistrements. Chaque enregistrement regroupe un certain nombre de champs Nom de la table Nom Attribut1 Attribut2 Attribut3 Liste des attributs de cette table (caractéristiques)

9 La modélisation de données
Exemple A : Un directeur de garage de voitures désire une base de données pour la gestion de ses clients et de leurs voitures. Voiture N° d’immatriculation Marque Gamme Modèle Puissance Place Client Modélisation de l’objet « voiture » Caractéristiques amenées à être manipuler dans la base

10 La modélisation de données
Exemple A : Attribut : (ou champ) caractéristique de l’objet Clef primaire : champ identifiant d’une table (un ou plusieurs) Voiture Nom Attribut1 Attribut2 Attribut3 N° d’immatriculation Marque Gamme Modèle Puissance Places Client Clé primaire

11 La modélisation de données
Vocabulaire indispensable : Enregistrements : présente toute l'information concernant un "membre " unique d'une table AttributA AttributB AttributC AttributX Enregistrement1 valeur1A valeur1B valeur1C valeur1X Enregistrement2 valeur2A valeur2B valeur2C valeur2X Enregistrement3 valeur3A valeur3B valeur3C valeur3X

12 La modélisation de données
Redondance d’informations Exemple B : Il y a 5 voitures dans le garage : N° d’imma-triculation Marque Gamme Modèle Puissance Places Client 1 4561XU57 Renault Mégane 1.9 Diesel RN 115 5 Honoré DUPUIS 2 654WT54 Peugeot 407 Coupé 140 Pauline RAVAL 3 5021AAA75 Jeep Wrangler - 150 4 Mélissa BARTH 9812XY57 Toyota Celica 1.8l 110 Simon LAVANDIER 7743OP57 206 XS 90 6 7

13 La modélisation de données
Exemple A (corrigé) : Redondance des données : un client peut avoir plusieurs voitures!! Séparer les données du client aux données de la voiture Pas assez d’informations sur le client : Nom Prénom Adresse postale , … Problème d’homonymes : Identification UNIQUE d’un client Si plusieurs clients ont le même nom Si plusieurs clients ont le même nom et prénom, … Référence unique du client

14 La modélisation de données
Exemple A (corrigé) : Un directeur de garage de voitures désire une base de données pour la gestion de ses clients et de leurs voitures. Voiture N° d’immatriculation Marque Gamme Modèle Puissance Place Client Modélisation de l’objet « voiture » Caractéristiques amenées à être manipuler dans la base

15 La modélisation de données
Exemple C : Création d’une 2ème table : Client Référence client Nom Prénom Adresse Voiture N° d’immatriculation Marque Gamme Modèle Puissance Place Lien ?

16 La modélisation de données
Exemple C : Clé étrangère (ou clé secondaire) : utilisée dans une table pour représenter la valeur de la clé primaire dans une table connexe Client Référence client Nom Prénom Adresse Voiture N° d’immatriculation Marque Gamme Modèle Puissance Place Référence client* possède

17 La modélisation de données
Exemple C : Il y a 4 clients du garage : Réf. client Nom Prénom Adresse 1 C0001 DUPUIS Honoré 10 rue … METZ 2 C0002 RAVAL Pauline 15 bd … 54000 NANCY 3 C0003 BARTH Mélissa 117 avenue … 57000 METZ 4 C0004 LAVANDIER Simon 3 rue … 5

18 La modélisation de données
Référence au client Exemple C : Il y a 5 voitures dans le garage : N° d’imma-triculation Marque Gamme Modèle Puissance Places Réf. Client 1 4561XU57 Renault Mégane 1.9 Diesel RN 115 5 C0001 2 654WT54 Peugeot 407 Coupé 140 C0002 3 5021AAA75 Jeep Wrangler - 150 4 C0003 9812XY57 Toyota Celica 1.8l 110 C0004 7743OP57 206 XS 90 6 7

19 La modélisation de données
Exemple D : Association : relie de 2 à n entités (tables) Cardinalité : Nombre (maximum, minimum) d'entités concernées par une relation Les cardinalités dans l’exemple précédent :

20 La modélisation de données
Exemple D : Une voiture appartient au moins un client mais à un seul Un client a au moins une voiture mais peut en avoir une infinité (n) Client Référence client Nom Prénom Adresse 1 , 1 Voiture N° d’immatriculation Marque Gamme Modèle Puissance Place Référence client* possède 1 , n

21 La modélisation de données
Exemple E : Ajoutons une entité « Mécano » afin de garder une trace des mécaniciens qui ont réparé telle ou telle voiture : Voiture Mécano N° d’immatriculation Marque Gamme Modèle Puissance Place Référence client* N° d’immatriculation Marque Gamme Modèle Puissance Place Référence client* Référence employé* Référence employé Nom Prénom Adresse Ancienneté Age Salaire a réparé

22 La modélisation de données
Exemple E : Il y a 3 employés dans le garage : Réf. employé Nom Prénom Adresse Ancienneté Age Salaire 1 M0001 SAHNOUNE Bertrand 10 rue … METZ 12 34 10512 2 M0002 MICHEL Barnabé 15 bd … 54000 NANCY 27 7905 3 M0003 KACED Youssouf 117 avenue … 57000 METZ 25 50 13420 4 5

23 La modélisation de données
Redondance d’informations Exemple E : Cas où les mécaniciens ont réparé les mêmes voitures N° d’imma-triculation Marque Gamme Modèle Puissance Places Réf. Client Réf. mécanos 1 4561XU57 Renault Mégane 1.9 Diesel RN 115 5 C0001 M0001 2 M0002 3 654WT54 Peugeot 407 Coupé 140 C0002 4 5021AAA75 Jeep Wrangler - 150 C0003 9812XY57 Toyota Celica 1.8l 110 C0004 6 M0003 7 7743OP57 206 XS 90

24 La modélisation de données
Exemple E : Les cardinalités permettent de déceler un tel problème : Voiture Mécano , n N° d’immatriculation Marque Gamme Modèle Puissance Place Référence client* N° d’immatriculation Marque Gamme Modèle Puissance Place Référence client* Référence employé* Référence employé Nom Prénom Adresse Ancienneté Age Salaire a réparé , n

25 La modélisation de données
Exemple E : Nouvelle entité : « Intervention » Voiture Mécano N° d’immatriculation Marque Gamme Modèle Puissance Place Référence client* Référence employé Nom Prénom Adresse Ancienneté Age Salaire Intervention N° Intervention Référence employé* N° d’immatriculation* Date_reparation

26 La modélisation de données
Exemple E : Cette 3ème table fera le lien entre la voiture réparée et le mécanicien concerné. N° Intervention N° d’immatriculation Réf. employé Date 1 REP0001 4561XU57 M0001 2 REP0002 M0002 3 REP0003 654WT54 4 REP0004 5021AAA75 5 REP0005 9812XY57 6 REP0006 M0003 7 REP0007 7743OP57

27 La modélisation de données
Un exercice simple : Une bibliothèque désire informatiser sa gestion d’ouvrages Chaque auteur a Un numéro unique que la bibliothèque lui attribue Le nom et le prénom La bibliothèque attribue également Un numéro unique a ses ouvrages (ISBN) ainsi que Le titre La date de parution doit également être conservée Cas n°1 : un auteur peut écrire plusieurs ouvrages mais un ouvrage est écrit par un seul auteur. Cas n°2 : un auteur peut écrire plusieurs ouvrages et un ouvrage peut être écrit par plusieurs co-auteurs.

28 La modélisation de données
Correction : CAS N°1 : schéma E/A – Entité/Association Ouvrage Auteur , n Référence ISBN Titre Date de parution Référence auteur* Référence auteur Nom Prénom a écrit 1 , 1

29 La modélisation de données
Correction : (schéma relationnel) CAS N°2 : Association « a écrit »  Entité « Co-auteur » Auteur Référence auteur Nom Prénom Co-auteur Référence auteur* Référence ISBN* Ouvrage Référence ISBN Titre Date de parution Référence auteur*

30 La modélisation de données
Exercice : un vidéo-club désire informatiser la gestion de ses films. Les films sont dotés d’un numéro unique, fourni par la société ainsi que d’un titre et de la durée du film Un film est soit sous format DVD, soit ou sous format VHS Le gérant du vidéo-club n’achète jamais qu’un seul exemplaire par film Le prix de la location d’un DVD est toujours de 4 euros et celui d’un VHS est de 2 euros Une personne est soit acteur, soit client A chaque personne, on attribue un numéro unique On conserve également dans la base de données ces données du client : nom, prénom, adresse, numéro de téléphone et adresse Un acteur peut jouer dans plusieurs films, et un film peut comporter plusieurs acteurs Une commande du client concerne un film à la fois avec la date conservée.

31 La modélisation de données
Correction : Schéma relationnel Film Acteur Employé Référence film Titre Durée Numéro acteur Nom Prénom Référence film* Numéro acteur* Client Commande Numéro client Nom Prénom Adresse Numéro de tel Référence film* Numéro client* Format Date

32 Les exemples Exemple A : les tables Exemple B : les enregistrements
Exemple C : les clés étrangères Exemple D : les cardinalités Exemple E : l’association Exercice1 (Corrigé) Exercice2 (Corrigé)

33 Les transactions SQL Les transactions SQL Qu'appelle-t-on SQL?
Structured Query Language  Langage de requêtes structuré Modèle relationnel : Langage de définition de données (LDD, DDL Data Definition Language) : créer des tables dans une base de données relationnelle, ainsi que d'en modifier ou en supprimer. Langage de manipulation de données (LMD, DML, Data Manipulation Language) : sélectionner, insérer, modifier ou supprimer des données dans une table d'une base de données relationnelle. Langage de contrôle de données (LCD, DCL, Data Control Language) : permissions au niveau des utilisateurs d'une base de données. Historique : Standard SQL, normalisé en 1986  SQL/86 1989  Version SQL/89 1992  Norme SQL/92 a désormais pour nom SQL2 Les transactions SQL

34 Les transactions SQL Bientôt disponible


Télécharger ppt "Bases de données et SGBD"

Présentations similaires


Annonces Google