Cours N°4 Base de Données & Langage SQL Sahbi SIDHOM, ICom Lyon 2 Promo. DESS IM 02/03
Plan du cours : 1. Modèle Relationnel et SQL 2. Introduction au modèle relationnel 3. Opérations propres de l’algèbre relationnelle 4. Syntaxe des opérations SQL et requêtes ____________ 5. Applications à la gestion de BDDR
V. Application sur un projet : tables, liens, schéma relationnel, requêtes en SQL…
1. Thème du projet Donner le thème du projet ou l’idée concernant la conception de la base de données. Exemples : Conception d’une base de données pour un restaurant animé sur une péniche ; Conception d’une base de données pour gérer un magasin de fournitures scolaires.
2. Présentation du projet Il s’agit de décrire en phrases simples les tâches inhérentes et fonctionnelles du projet. Exemples: Restaurant animé : *une péniche transformée en restaurant pour accueillir des clients, *proposant des menus évolutifs et qui changent chaque semaine/ mois/ saison/ événement…, *le soir, le lieu d’accueil se métamorphose en bar/ salle de concert/ boite de nuit…, *le lieu comporte des salles pou fumeurs, non fumeurs et avec scène de spectacle.
magasin de fournitures scolaires : magasin de fournitures scolaires : *un magasin spécialisé dans objets scolaires proposant des gammes de produit pour tous les goût, *ses produits concernent l’écolier comme l’universitaire, *varier les fournisseurs donnent l’avantage à proposer différents produits, *l’employé du magasin est à l’écoute du client dans ses achats.
3. Cahier des charges Interfaçage entre la base de données et ses utilisateurs Formulaires de saisie de données Chaque formulaire s’adapte à la tâche accomplie par son utilisateur Exemples : Formulaire pour les réservations Formulaire pour passer une commande …
4. Description des tables Distinguer : Tables simples : ne contenant pas d’informations provenant d’autres tables, Tables de relations : contenant des identifiants de différentes tables et permettant de mettre en relation des tuples/n-uplets entre eux Exemples : * RESTAURANT : Table CLIENT(id_client, Nom, Prénom, Age, Adresse, Téléphone, profession), Table MENU(id_menu, Libellé, Prix), Table RESERVATION(id_réservation, Date, id_client, id_menu,…) : relation Client/Menu, …
* MAGASIN : Table CLIENT(id_client, Nom, Prénom, Age, Adresse, Téléphone, profession), Table EMPLOYE(id_employé, Nom, Fonction, Adresse), Table COMMANDE(id_commande, id_client, id_employé, id_produit, DateCommande, DateLivraison) : relation Client/Employé …
5. Description des relations entre les tables Distinguer : Un - Plusieurs ( 1-n ) et Plusieurs – Plusieurs ( n-n ) Exemples : Un Client peut faire plusieurs Réservations Un Menu peut être proposé à plusieurs Clients Un Employé sert plusieurs Clients Un Produit est fourni par plusieurs Fournisseurs …
6. Les requêtes Distinguer : Les requêtes simples Les requêtes croisées ou avec critères Par application des opérations de l’algèbre relationnelle selon les besoins dans la gestion de la base. Exemples : SELECT NUMclient, NOMclient FROM CLIENT UNION SELECT NUMcom, NUMemploye FROM COMMANDE ORDER BY NUMclient; …