TD 2 : La bibliothèque de M. Bouquin (p. 79)

Documents pareils
PROGRAMME ESTIVAL DE REVISIONS ET DE LECTURE

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

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

Le langage SQL Rappels

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

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF

Exemples de reque tes dans data.bnf.fr

SOMMAIRE. Travailler avec les requêtes... 3

MAISON NATALE DE VICTOR HUGO

Langage SQL : créer et interroger une base

TD n 10 : Ma première Base de Données

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

CORRIGÉ GEDOC SA. Proposition de barème sur 70 points

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

Bases de Données. Plan

Rappels. Prenons par exemple cet extrait : Récit / roman

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager

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

Académie de Créteil. Projet présenté autour de l album «Trois souris peintres» d Ellen Stoll Walsh

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

INTRODUCTION AU DATA MINING

Bases de données relationnelles

Les bases de données

UNIVERSITY OF MALTA FACULTY OF ARTS. French as Main Area in an ordinary Bachelor s Degree

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

LIRE DES ROMANS ADAPTÉS EN «FRANÇAIS FACILE» Cliquer ici.

MODE OPERATOIRE OPENOFFICE BASE

Base de données relationnelle et requêtes SQL

Schéma relationnel et contraintes d intégrité : le cas ConduiteAuto

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

FICHES DE REVISIONS LITTERATURE

Auto-évaluation SQL. Document: f0453test.fm 19/04/2012. ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium

Cours: Les Jointures 1

16H Cours / 18H TD / 20H TP

UTILISER UN SITE COLLABORATIF

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO S2-IO2 Bases de données: Jointures, Transactions

Agence web en Suisse romande CH-1260 Nyon

Olivier Mondet

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

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

TP Bases de données réparties

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

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

Durée : 4 heures Le sujet se présente sous la forme de deux dossiers indépendants

Un écrivain dans la classe : pour quoi faire?

BTS/CGO P10 SYSTEME INFORMATION Année

Bases de données élémentaires Maude Manouvrier

1 Introduction et installation

Nom de l application

Rappel sur les bases de données

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

Questionnaire à destination des élèves 4 e -2 de à remplir avant ou après la visite aux Archives

Rechercher l accès d une transaction dans l arborescence SIFAC. Le résultat s affiche : Terminer directement une transaction. Fermer un mode en cours

SQL Historique

Guide du/de la candidat/e pour l élaboration du dossier ciblé

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2

Le Langage De Description De Données(LDD)

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

BAREME sur 40 points. Informatique - session 2 - Master de psychologie 2006/2007

PROJET 1 : BASE DE DONNÉES REPARTIES

Baccalauréat Technologique. Épreuve de Spécialité Partie écrite

ÉLÉMENTS INDICATIFS DE CORRIGÉ. BARÈME GLOBAL sur 140 points

Les bases de données. Se familiariser avec Base. Figure 1.1A Ouvre le fichier dont tu as besoin. Lance OpenOffice Base.

David LUCAS 15/01/10 Ludovic HUET Sébastien LE NECHET Jason JAMOT. Projet BO

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

GESTION D UNE BASE BIBLIOGRAPHIQUE

Etude et développement d un moteur de recherche

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

SUBVENTIONS A VERSER AUX COOPERATIVES D'ECOLE CONSEIL MUNICIPAL DE DECEMBRE 2010 SOUS-FONCTION ARTICLE AED

Console IAP Manuel d utilisation

La présente publication est protégée par les droits d auteur. Tous droits réservés.

Dans une année, il y a 12 mois. Dans une année, il y a 52 semaines. Dans une année, il y a 4 trimestres. Dans une année, il y a 365 jours.

Congrès National en Normandie 26, 27 et 28 mai 2016 Deauville. Offre Partenariale. Prix net de taxe

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Thème : Gestion commerciale

Notes de cours : bases de données distribuées et repliquées

Identification toutes les catégories

Lectures et lecteurs en 2015

PHP 4 PARTIE : BASE DE DONNEES

Business Intelligence avec Excel, Power BI et Office 365

Utilisation d Hyperplanning 2011

La liberté guidant le peuple sur les barricades

Le Langage SQL version Oracle

Chapitre 11 Bases de données

LA MAISON DE POUPEE DE PETRONELLA DUNOIS

INSTITUT LIMAYRAC. enseignement supérieur Toulouse. Vincent de Prato BTS Informatique de Gestion. Option Administrateur de Réseaux Locaux

Optimisation SQL. Quelques règles de bases

Cours Bases de données 2ème année IUT

Chapitre Introduction : Notion de Bases de données. 2. Définition : BD Répartie. 3. Architecture des SGBD. 4. Conception des bases réparties

Initiation à Excel. Frédéric Gava (MCF)

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

SESSION 2014 ÉPREUVE À OPTION. (durée : 4 heures coefficient : 6 note éliminatoire 4 sur 20)

CREATION WEB DYNAMIQUE

Méthodologie du dossier. Epreuve d histoire de l art

Transcription:

A. Étude du schéma relationnel TD 2 : La bibliothèque de M. Bouquin (p. 79) 1. Affichez le schéma relationnel de la base. 2. Proposez sous forme textuelle le schéma de la base de données, en précisant les clés primaires et les clés étrangères. AUTEURS (N de l auteur, Nom, Prénom, Année de naissance, Ville de naissance) Clé primaire : N de l auteur GENRES (Code du genre, Libellé du genre) Clé primaire : Code du genre LIVRES (N du livre, Titre du livre, Année de parution, Prix d achat, N de l auteur, Code du genre) Clé primaire : N du livre Clés étrangères : N de l auteur en référence à N de l auteur de la table AUTEURS Code du genre en référence à Code du genre de la table GENRES B. Interrogation de la base de données 1. Requêtes faisant intervenir les opérations de projection et de tri a) Liste des titres de livres dans l ordre alphabétique. Select [Titre du livre] From LIVRES Order by [Titre du livre] Seul le champ [Titre du livre] est projeté, le tri a pour critère le [Titre du livre] et il est croissant (ordre implicite).

Titre du livre EUGÉNIE GRANDET HERNANI LA CHARTREUSE DE PARME LA DAME AUX CAMÉLIAS LE PÈRE GORIOT LE ROUGE ET LE NOIR L ÉCOLE DES FEMMES LES CONTEMPLATIONS LES FLEURS DU MAL LES MISÉRABLES LES PRÉCIEUSES RIDICULES LES TROIS MOUSQUETAIRES MADAME BOVARY POÈMES SATURNIENS TARTUFFE VINGT ANS APRÈS b) Liste des livres (titre et année de parution) dans l ordre chronologique. Select [Titre du livre], [Année de parution] From LIVRES Order by [Année de parution] La requête, dans sa rédaction, est sans ambiguïté, elle indique ce qui doit être projetée et le critère de tri ne peut être que l année de parution. Titre du livre Année de parution LES PRÉCIEUSES RIDICULES 1659 L ÉCOLE DES FEMMES 1662 TARTUFFE 1669 HERNANI 1830 LE ROUGE ET LE NOIR 1831 EUGÉNIE GRANDET 1833 LE PÈRE GORIOT 1834 LA CHARTREUSE DE PARME 1839 LES FLEURS DU MAL 1841 LES TROIS MOUSQUETAIRES 1844 VINGT ANS APRÈS 1845 LA DAME AUX CAMÉLIAS 1848 LES CONTEMPLATIONS 1856 MADAME BOVARY 1857 LES MISÉRABLES 1862 POÈMES SATURNIENS 1866 2. Requêtes faisant intervenir l opération de restriction a) Quelle est la requête qui a permis d obtenir le résultat ci-dessous? Exprimez-la d abord en langage courant puis en SQL.

Titre du livre Année de parution Prix d achat LES CONTEMPLATIONS 1856 9,00 POÈMES SATURNIENS 1866 8,00 LES FLEURS DU MAL 1841 8,00 Il s agit de la liste des livres de poésie avec leur titre, leur année de parution et leur prix d achat. Select [Titre du livre], [Année de parution], [Prix d achat] From LIVRES Where [Code du genre] = "P" L opération de restriction porte sur le [Code du genre] qui doit être égal à "P". b) Liste des auteurs (nom, prénom, année de naissance) nés à Paris. Nom Prénom Année de naissance BAUDELAIRE Charles 1821 DUMAS Alexandre 1824 MOLIÈRE Jean-Baptiste 1622 SAND George 1804 ZOLA Emile 1840 Select Nom, Prénom, [Année de naissance] From AUTEURS Where [Ville de naissance] = "Paris" Order by Nom Les champs projetés sont toujours ceux qui sont énumérés après le Select. Une restriction est opérée sur la proposition (condition) [Ville de naissance] = "Paris" et enfin un tri croissant sur le nom des auteurs est effectué. N du livre c) Quelle est la requête qui a permis d obtenir le résultat ci-dessous? Exprimez-la d abord en langage courant puis en SQL. Titre du livre Année Prix N de parution d achat de l auteur 2 HERNANI 1830 16,00 01 T 7 LES CONTEMPLATIONS 1856 9,00 01 P 11 POÈMES SATURNIENS 1866 8,00 07 P 13 LES FLEURS DU MAL 1841 8,00 11 P 14 LES PRÉCIEUSES RIDICULES 1659 5,00 12 T 15 TARTUFFE 1669 4,00 12 T 16 L ÉCOLE DES FEMMES 1662 7,00 12 T Il s agit de la liste des livres qui ne sont pas des romans. Select * From LIVRES Where [Code du genre] < > "R" 3. Requêtes faisant intervenir l opération de jointure a) Liste des titres de livres avec le nom de leur auteur. Code du genre

Titre du livre Nom Prénom EUGÉNIE GRANDET BALZAC Honoré HERNANI HUGO Victor LA CHARTREUSE DE PARME STENDHAL Henri LA DAME AUX CAMÉLIAS DUMAS Alexandre LE PÈRE GORIOT BALZAC Honoré LE ROUGE ET LE NOIR STENDHAL Henri L ÉCOLE DES FEMMES MOLIÈRE Jean-Baptiste LES CONTEMPLATIONS HUGO Victor LES FLEURS DU MAL BAUDELAIRE Charles LES MISÉRABLES HUGO Victor LES PRÉCIEUSES RIDICULES MOLIÈRE Jean-Baptiste LES TROIS MOUSQUETAIRES DUMAS Alexandre MADAME BOVARY FLAUBERT Gustave POÈMES SATURNIENS VERLAINE Paul TARTUFFE MOLIÈRE Jean-Baptiste VINGT ANS APRÈS DUMAS Alexandre Select [Titre du livre], Nom, Prénom From AUTEURS, LIVRES Order by [Titre du livre] Outre la projection et le tri, la jointure s exprime par une restriction (Where) sur la condition AUTEURS.[N de l auteur] = LIVRES.[N de l auteur] (qui exprime l égalité entre la clé primaire de AUTEURS et la clé étrangère de LIVRES qui la référence) du produit AUTEURS, LIVRES. Sans cette condition, chaque livre serait associé à chaque auteur (ou vice-versa ). Ou, si l on veut cette liste par auteur : Select Nom, Prénom, [Titre du livre] From AUTEURS, LIVRES Order by Nom, Prénom Nous avons changé le critère de tri. L ordre alphabétique par titres se justifie autant que l ordre alphabétique par auteurs, l intitulé de la requête ne permet pas de savoir quel est celui voulu par celui (ou celle) qui pose cette question. b) Liste des livres (titre, année de parution) classés selon le nom de leur genre.

Libellé du genre Titre du livre Année de parution POÉSIE POÈMES SATURNIENS 1866 POÉSIE LES FLEURS DU MAL 1841 POÉSIE LES CONTEMPLATIONS 1856 ROMAN LES MISÉRABLES 1862 ROMAN EUGÉNIE GRANDET 1833 ROMAN LA CHARTREUSE DE PARME 1839 ROMAN LA DAME AUX CAMÉLIAS 1848 ROMAN LE ROUGE ET LE NOIR 1831 ROMAN LES TROIS MOUSQUETAIRES 1844 ROMAN MADAME BOVARY 1857 ROMAN VINGT ANS APRÈS 1845 ROMAN LE PÈRE GORIOT 1834 THÉÂTRE L ÉCOLE DES FEMMES 1662 THÉÂTRE HERNANI 1830 THÉÂTRE LES PRÉCIEUSES RIDICULES 1659 THÉÂTRE TARTUFFE 1669 Select [Libellé du genre], [Titre du livre], [Année de parution] From GENRES, LIVRES Where GENRES.[Code du genre] = LIVRES.[Code du genre] Order by [Libellé du genre] Ici pas d ambiguïté, l ordre de tri est précisé ainsi que la projection des champs à afficher (le [Libellé du genre] du genre doit être projeté puisque c est le critère de tri). La jointure entre LIVRES et GENRES est indispensable puisque le [Libellé du genre] n est pas présent dans LIVRES où seul figure le [Code du genre], clé étrangère qui permet d «aller chercher» à quel [Libellé du genre] il correspond dans la table GENRES. c) Liste des livres écrits par Victor Hugo. Titre du livre Année de parution Prix d achat Code du genre HERNANI 1830 16,00 T LES CONTEMPLATIONS 1856 9,00 P LES MISÉRABLES 1862 18,50 R Select [Titre du livre], [Année de parution], [Prix d achat], [Code du genre] From AUTEURS, LIVRES And Nom = "HUGO" Une jointure entre LIVRES et AUTEURS est opérée puisque le Nom de l auteur, critère de la restriction, ne se trouve pas dans la table LIVRES mais dans la table AUTEURS.

4. Requêtes faisant intervenir l opérateur Et a) Que signifie la requête suivante? Select [Titre du livre], [Année de parution], [Prix d achat], [Code du genre] from LIVRES Where [Prix d achat]<8 And [Code du genre]="t" Order by [Titre du livre] Les pièces de théâtre achetées moins de 8 : Titre du livre Année de parution Prix d achat Code du genre L ÉCOLE DES FEMMES 1662 7,00 T LES PRÉCIEUSES RIDICULES 1659 5,00 T TARTUFFE 1669 4,00 T b) Rédigez en SQL les deux requêtes suivantes : 1. Liste des romans (code R) écrits dans la seconde moitié du XIX e siècle. Select [Titre du livre], [Année de parution] From LIVRES Where [Année de parution] Between 1850 And 1899 And [Code du genre] = "R" Order by [Année de parution]; Titre du livre Année de parution LA DAME AUX CAMÉLIAS 1852 MADAME BOVARY 1857 LES MISÉRABLES 1862 Il se peut que, à l avenir, M. Bouquin achète des livres plus contemporains (au-delà de 1900!) donc le Between s impose pour éliminer les livres parus au XX e siècle (ou au XXI e ). 2. Liste des romans écrits par Victor Hugo. Select [Titre du livre], [Année de parution], [Prix d achat] From AUTEURS, LIVRES And Nom = "HUGO" And [Code du genre] = "R" Titre du livre Année de parution Prix d achat LES MISÉRABLES 1862 18,50 La jointure avec la table AUTEURS s impose puisque, dans la table LIVRES, on n a que le N de l auteur : il faut donc aller chercher le nom de Hugo dans le champ NOM de cette table.