Soit le modèle relationnel suivant :
station(idStation,nomStation,altitude,pays)
competition(idCompetition,libelleCompet,dateComp,#station_id)
classement(#skieur_id,#competition_id,classement)
comporte(#competition_id,
#specialite_id)
skieur(idSkieur
,nomSkieur,#specialite_id,#station_id)
specialite(idSpecialite,libelleSpecialite)
Écrire dans un fichier script_tp2.sql le script de création des tables correspondant au modèle ci dessus.
Supprimer toutes les tables si elles existent.
Créer toutes les tables si elles n'existent pas.
(Utiliser les mots clés IF EXISTS lors de la suppression de la table et IF NOT EXISTS lors de la création des tables.)
Écrire les requêtes SQL suivantes :
+-------------------------+
| NbreSkieurDansUneCompet |
+-------------------------+
| 6 |
+-------------------------+
(exemple avec les données jointes)
+-----------+--------------------+
| nomSkieur | nomStation |
+-----------+--------------------+
| robert | Chambery |
| bernard | Le Ballon d'alsace |
| alberto | Metabief |
| jacques | Tignes |
| paul | Tignes |
| pierre | Tignes |
| tom | Tignes |
| edouard | Verbier |
+-----------+--------------------+
(exemple avec les données jointes)
+-----------+------------+---------------------------+
| nomSkieur | classement | libelleCompet |
+-----------+------------+---------------------------+
| pierre | 1 | compet cadet france |
| tom | 2 | compet cadet france |
| jacques | 3 | compet cadet france |
| robert | 4 | compet cadet france |
| edouard | 5 | compet cadet france |
| paul | 1 | compet junior france |
| pierre | 2 | compet junior france |
| robert | 3 | compet junior france |
| jacques | 4 | compet junior france |
| tom | 5 | compet junior france |
| edouard | 6 | compet junior france |
| paul | 1 | competition cadet europe |
| jacques | 2 | competition cadet europe |
| edouard | 3 | competition cadet europe |
| robert | 4 | competition cadet europe |
| jacques | 1 | competition junior europe |
| pierre | 2 | competition junior europe |
| edouard | 3 | competition junior europe |
| robert | 4 | competition junior europe |
+-----------+------------+---------------------------+
(exemple avec les données jointes)
+--------------------------+-----------+
| libelleCompet | nomSkieur |
+--------------------------+-----------+
| compet cadet france | pierre |
| compet junior france | paul |
| competition cadet europe | paul |
+--------------------------+-----------+
(exemple avec les données jointes)
+-----------+------------+-------------+
| idStation | nomStation | nbrDeCompet |
+-----------+------------+-------------+
| 3 | Chambery | 2 |
| 1 | Tignes | 5 |
| 2 | Verbier | 1 |
+-----------+------------+-------------+
(exemple avec les données jointes)
+----------+-----------+-----------------+
| idSkieur | nomSkieur | NbreDeVictoires |
+----------+-----------+-----------------+
| 2 | pierre | 1 |
| 3 | paul | 2 |
+----------+-----------+-----------------+
(exemple avec les données jointes)
+-----------+
| nomSkieur |
+-----------+
| paul |
+-----------+
(exemple avec les données jointes)
Utiliser un des 2 logiciels suivants :
Utiliser de préférence looping
Établir le modèle conceptuel des données associé à ce modèle relationnel.
Commencer par ajouter des enregistrements :
DELETE
TRUNCATE
pour supprimer les enregistrements. Il faudra peut
être autoriser l’instruction TRUNCATE
, avec mettant la
variable d’environement FOREIGN_KEY_CHECKS à 0 puis à 1 :
SET FOREIGN_KEY_CHECKS = 0; ... SET FOREIGN_KEY_CHECKS = 1;
Vérifier les requêtes ci-dessous avec les nouveaux enregistrements
+-----------+------------+-------------+----------+
| nomSkieur | classement | lieu_compet | club |
+-----------+------------+-------------+----------+
| pierre | 1 | Tignes | Tignes |
| pierre | 2 | Tignes | Tignes |
| paul | 1 | Tignes | Tignes |
| alberto | 1 | Tignes | Metabief |
+-----------+------------+-------------+----------+
+-----------+
| nomSkieur |
+-----------+
| pierre |
| paul |
+-----------+
[http://perso.modulonet.fr/placurie/Ressources/BTS1-ALSI/Evaluation-5%20(correction).pdf]
(http://perso.modulonet.fr/placurie/Alsi1.htm)
+------------+
| nomStation |
+------------+
| Tignes |
+------------+
+-----------+
| nomSkieur |
+-----------+
| tom |
| alberto |
+-----------+
+--------------------------------+
| libelleCompet |
+--------------------------------+
| championnat cadet europe 2020 |
+--------------------------------+
+-----------+
| nomSkieur |
+-----------+
| pierre |
| paul |
| jacques |
| alphand |
+-----------+
+-----------+
| nomSkieur |
+-----------+
| pierre |
| paul |
| jacques |
| edouard |
| alberto |
+-----------+
+-----------+
| nomSkieur |
+-----------+
| jacques |
| paul |
+-----------+