Vous êtes sur la page 1sur 5

Année 2022/2023

Premier Semestre
Master 1 SDA

Projet de Base de Données

Exercice 1 :

Entrepôt de données : ventes de produits d’une entreprise


Produit (Id_produit, CodeProduit, Désignation, Marque, PrixUnitaire)
Magasin (Id_magasin, CodeMagasin, Ville, Departement)
DateVente (Id_date, Date, Mois, NomMois, Semestre, Année)
Vente (Id_produit, Id_magasin, Id_Date, Montant)

1. Spécifier pour chaque relation la clé primaire et la clé étrangère


2. Les tables de l’entrepôt de données sont définies de la sorte :
Table Produit
Id_produit CodeProduit Désignation Marque PrixUnitaire
1 PROD001 Ordinateur Dell 899.99
portable
2 PROD002 Smartphone Samsung 699.99
3 PROD003 Téléviseur Sony 499.99
LED

Table Magasin
Id_magasin CodeMagasin Ville Departement
1 MAG001 Paris Ile-de-France
2 MAG002 Lyon Auvergne-Rhône-Alpes
3 MAG003 Marseille Provence-Alpes-Côte
d’Azur

1
Table DateVente

Id_date Date Mois NomMois Semestre Année


1 2023- 1 Janvier 1 2023
01-15
2 2023- 2 Février 1 2023
02-20
3 2023- 3 Mars 1 2023
03-10

Table Vente
Id_produit Id_magasin Id_date Montant
1 1 1 899.99
2 2 2 699.99
3 3 3 499.99
2 1 1 699.99
1 2 2 899.99
3 1 3 499.99
1 3 1 899.99

a. Créer ces tables en prenant le soin de spécifier les contraintes


b. Insérer les valeurs dans ces tables

3. Donner les requêtes SQL :


a. Montant total des ventes par année et par département
b. Même question mais vous devez afficher les valeurs des montants > 5000
c. Produits qui n’ont jamais été vendus (utiliser la jointure)
d. Requête pour charger la table Vente à partir de la table SAS_Vente définie par :
SAS_Vente (CodeProduit, CodeMagasin, Date, Montant)

2
Table SAS_Vente
CodeProduit CodeMagasin Date Montant
PROD001 MAG001 2023- 100
01-15
PROD002 MAG002 2023- 150
02-20
PROD003 MAG003 2023- 80
03-10
PROD001 MAG002 2023- 120
01-15
PROD002 MAG001 2023- 130
02-20
PROD001 MAG003 2O23- 90
03-10
PROD001 MAG0003 2023- 110
01-15
PROD002 MAG001 2023- 140
02-20
PROD003 MAG002 2023- 70
03-10

3
Exercice 2 :
Table Avion
numAV capcité type entrepôt
123 150 Type 1 Paris
456 200 Type 2 Lille
789 180 Type 3 Pogo Togo
666 300 Type 4 Pogo Togo

Table Pilote
Matricule Nom Ville Age salaire
111 Pilote 1 Paris 25 250000
222 Pilote 2 Lyon 18 210000
333 Pilote 3 Lille 22 220000
444 Pilote 4 Bruxelles 30 190000
555 Pilote 5 Pogo Togo 28 260000

Table Passager
NumP NomP
1 Passager 1
2 Passager 2
3 Passager 3
4 Passager 4

Table Depart
numV DateD numAV matricule
101 2023-11-01 123 111
102 2023-11-02 456 222
103 2023-11-03 789 333
104 2023-11-04 666 444

Table Vol
numV Heure_départ H_arrivée Vile_départ Ville_arrivée
101 08 :00 :00 10 :00 :00 Paris Lyon
102 09 :00 :00 11 :00 :00 Lille Bruxelles
103 10 :00 :00 12 :00 :00 Bruxelles Dakar
104 11 :00 :00 13 :00 :00 Pogo Togo Bamako

4
Table Reservation
numP numV DateD
1 101 2023-11-01
2 102 2023-11-02
3 103 2023-11-03
4 104 2023-11-04

1. Quels sont les numéros, types et capacités des avions ayant une capacité supérieure à
100 ?
2. Quelles sont les villes ayant un nom commençant par ‘L’et où un pilote de moins de
20 ans gagne plus de 200000 F ?
3. Quelles sont les villes d’où part un vol pour Bamako ? (Donner les résultats en
majuscule)
4. Quelle est la capacité moyenne des avions entreposés à Pogo Togo ?
5. Quels sont les noms des pilotes (avec leur matricules) qui habitent dans une ville où
sont localisés des avions de capacité supérieure à 250 ?
6. Quels sont les pilotes (matricule et nom) qui conduisent l’avion de numéro 666 sauf
ceux qui habitent dans la ville ou est entreposé l’avion 666 ?

Exercice 3 :
Reprendre la base de données de l’Exercice 1 puis répondez à ces questions en faisant de
l’interfaçage entre Python et MySQL ou bien entre Python et Microsoft SQL Server
Management Studio.
1. Etablir la connexion entre python et MySQL ou bien entre Python et Microsoft SQL
Server Management Studio.
2. Insérer le produit suivant dans la table produit :
(4, PROD004, Ordinateur Portable, Lenovo, 599.99)
3. Afficher les produits dont la désignation est Ordinateur Portable ainsi que leurs prix
unitaires.
4. Supprimer au niveau de la table Vente le produit ayant pour id_produit 1

Vous aimerez peut-être aussi