0% ont trouvé ce document utile (0 vote)
5 vues5 pages

Classe: Série: Nom Du Prof:: 4 Sciences de L'informatique Gestion Des Données M Ladhari Tijani

Le document présente un exercice de gestion des données pour une base de données de pizzeria, incluant des tables pour les pizzas, clients, commandes et livreurs. Il aborde des concepts SQL tels que les commandes LDD et LMD, les requêtes imbriquées, ainsi que des règles de gestion pour les relations entre les tables. Des questions pratiques sont posées pour appliquer ces concepts, notamment la création de tables, l'ajout de contraintes et l'exécution de requêtes SQL.

Transféré par

mortadhamerai27
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues5 pages

Classe: Série: Nom Du Prof:: 4 Sciences de L'informatique Gestion Des Données M Ladhari Tijani

Le document présente un exercice de gestion des données pour une base de données de pizzeria, incluant des tables pour les pizzas, clients, commandes et livreurs. Il aborde des concepts SQL tels que les commandes LDD et LMD, les requêtes imbriquées, ainsi que des règles de gestion pour les relations entre les tables. Des questions pratiques sont posées pour appliquer ces concepts, notamment la création de tables, l'ajout de contraintes et l'exécution de requêtes SQL.

Transféré par

mortadhamerai27
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

STI

Systèmes & Technologies de l'Informatique

Classe : 4e Sciences de l'Informatique


S

Série : Gestion des données

Nom du prof : M Ladhari Tijani


STI
Anglais

Objectifs
❖ Les commandes SQL (LDD)
❖ Les commandes SQL (LMD)
❖ Group by , Having
❖ Les requêtes imbriquées

Exercice 90 min

Soit la représentation textuelle d’une base de données représentant la gestion des commandes dans
une pizzeria :

Pizza (IdPizza, Nom, Prix)

Client (TelC, NomPreC, Adresse)

Commande (IdPizza#, TelC#, QteCmd)

Livreur (Matricule, NomPreL, TelL )

Description des colonnes


colonne Description Type Taille Obliga- Contrainte
toire
IdPizza Identifiant d’une Pizza Texte 3
Nom Nom d’une Pizza Texte 30 oui
Prix Prix d’une Pizza Décimale 6,3 oui >0
TelC Numéro de téléphone d’un Texte 8
client
NomPreC Nom et prénom d’un client Texte 50 oui

Adresse Adresse d’un client Texte 100 oui


QteCmd Quantité commandée d’une Entier 1 non
Pizza
Matricule Matricule d’un livreur Texte 10
NomPreL Nom et prénom d’un livreur Texte 50 oui
TelL Numéro de téléphone d’un li- Texte 8 oui
vreur

1. Le concepteur de la base de données propose les deux règles de gestion suivantes :


R1 : Une commande est livrée par un livreur
R2 : Un livreur peut livrer plusieurs commandes
Donner la nouvelle représentation textuelle des trois tables "Livreur" et "Commande".

1
STI
Anglais

2. Sachant qu’un client peut commander le même pizza plusieurs fois à des dates différents . Co-
cher la nouvelle représentation graphique

Représentation graphique Réponse

3. Le concepteur veut ajouter dans cette base une nouvelle table nommée "ingrédient" contenant
les champs suivants :
Champs Description
Code Code de l’ingrédient , Auto-incrémenté
Libelle Libellé de l’ingrédient de type chaine (100)
Prix Prix de l’ingrédient , decimal(6,3) , Strictement positif

Sachant que les règles de gestion ci-dessous doivent être respectées :

R3 : Une pizza peut contenir plusieurs ingrédients

R4: Un ingrédient peut être utiliser dans plusieurs pizzas

a) Donner la nouvelle représentation textuelle des tables concernées par ces règles de gestion
b) Ecrire la commande SQL pour créer cette table

2
STI
Anglais

4. Soient le requêtes SQL présentée ci-dessous permettant de créer la table Pizza

CREATE TABLE Pizza (


IdPizza Varchar(3) PRIMARY KEY,
NomPizza Varchar(30),
Prix Decimal(6,3) ) ;

Ecrire les requêtes SQL nécessaires permettant d’ajouter les contraintes manquantes en s’appuyant
sur la représentation textuelle de la base données et à la description des colonnes indiquée ci-dessus :

5. Pour chacune des situations suivantes, mettre une croix  devant la réponse correcte :
a) Soit la requête SQL suivante :
DELETE FROM commande WHERE DATEDIFF(NOW(), DateCmd ) <7;
En exécutant la requête, Le système :
Supprime toutes les commandes dont la date (DateCmd) est inférieure à 7 jours par rapport
à la date actuelle.
Supprimer toutes les commandes de la table commande dont la date (DateCmd) est inférieure
à 7 mois par rapport à la date actuelle.
Supprimer toutes les commandes de la table commande dont la date (DateCmd) est inférieure
à 7 ans par rapport à la date actuelle.

b) La requête qui permet d’insérer un nouvel ingrédient est :


Insert into ingredient (Libelle, Prix) values ("champignon",13.500) ;
Insert into ingredient values ("champignon",13.500) ;
Insert into ingredient values (Null,"champignon",13.500) ;

c) La requête qui permet de renommer le champ Nom dans la table Pizza par NomPizza
est :
RENAME TABLE Nom TO NomPizza ;
ALTER TABLE Pizza RENAME Nom TO NomPizza;
ALTER TABLE Pizza CHANGE Nom NomPizza VARCHAR(30) Not Null;

3
STI
Anglais

6. Ecrire les requêtes SQL permettant de répondre aux questions suivantes :

a- Afficher les pizzas qui ont un prix entre 10 et 20 dinars. On affichera les champs
nomPizza et le prix .
b- Afficher les livreurs qui ont livré une commande à un client habitant la ville de Mahdia.
On affiche les champs NomPreL et TelL
c- Afficher la quantité commander pour chaque pizza aujourd’hui . On affiche le nom de la
pizza et la quantité
d- Afficher les clients qui ont commandé plus de 10 pizzas cette semaine. on affiche les
champs NomPreC et TelC
e- Lister les livreurs qui ont livré plus de 3 commandes, triés par nombre de livraisons
croissant. On affiche le nom de livreur et le nombre de commande
f- Afficher les clients habitant la ville Bizerte et qui ont dépensé plus de 200 dinars le mois
en cours . On affiche le nom de client , le numéro de téléphone et le montant dépensé
NB : montant dépensé par un client = somme (Prix de la pizza × Quantité commandée).
g- Afficher les noms des pizzas qui n’ont pas été commander aujourd’hui
h- Afficher les noms et prénoms des clients qui ont commandé la même pizza que le client
ayant le numéro 98770555.

Vous aimerez peut-être aussi