Exercices type bac
- Cet exercice est calibré pour durer une heure maximum lors de l’épreuve théorique du baccalauréat.
- Il est à réaliser sur papier.
Exercice
Cet exercice porte sur les bases de données relationnelles et le langage SQL.
L’énoncé de cet exercice utilise les mots du langage SQL suivant :
SELECT, FROM, WHERE, JOIN, INSERT INTO, VALUES, ORDER BY
On rappelle qu’en SQL la clause ORDER BY, suivie d’un attribut, permet de classer les résultats par ordre croissant de l’attribut.
Dans un lycée, le parc informatique est constitué d’ordinateurs, d’imprimantes, de vidéoprojecteurs et de TNI (Tableau Numérique Interactif).
Tous les ordinateurs et toutes les imprimantes sont connectés au réseau de l’établissement.
Chaque salle de cours est identifiée par un numéro unique et contient :
- un ou plusieurs ordinateurs reliés au réseau de l’établissement ;
- aucun ou un seul vidéoprojecteur ;
- s’il y a un vidéoprojecteur, aucun ou un seul TNI ;
- une ou plusieurs imprimantes réseau.
Un ordinateur peut être connecté via le réseau à une ou plusieurs imprimantes (situées éventuellement dans une ou plusieurs autres salles) et à un vidéoprojecteur avec TNI ou non.
Les ordinateurs et les imprimantes possèdent un nom unique sur le réseau de l’établissement.
Les vidéoprojecteurs ne sont pas connectés au réseau, ils ne possèdent pas de nom unique. Ils sont donc identifiés par le numéro de la salle où ils sont installés. Tous ces matériels sont gérés à l’aide d’une base de données relationnelle qui comprend 3 relations (ou tables) nommées : Ordinateur, Videoprojecteur, Imprimante
On donne ci dessous le schéma relationnel de la relation Ordinateur, suivi d’un extrait de la relation Ordinateur. La clé primaire est en gras.
Ordinateur(nom_ordi : String, salle : String, marque_ordi : String, modele_ordi : String, annee : Int, video : Boolean)
On distingue deux types d’ordinateurs :
- les ordinateurs multimédias pour les logiciels généraux avec un nom commençant par le groupe de lettres Gen.
- les ordinateurs techniques pour les logiciels qui demandent plus de ressources avec un nom commençant par le groupe de lettres Tech.
Ce groupe de lettres est suivi d’un tiret et du numéro unique de l’ordinateur pour chaque type. Les 5 premières lignes de la relation Ordinateur
nom_ordi | salle | marque_ordi | modele_ordi | annee | video |
---|---|---|---|---|---|
Gen-24 | 012 | HP | compaq pro 6300 | 2012 | true |
Tech-62 | 114 | Lenovo | p300 | 2015 | true |
Gen-132 | 223 | Dell | Inspiron Compact | 2019 | true |
Gen-133 | 223 | Dell | Inspiron Compact | 2019 | false |
Gen-134 | 223 | Dell | Inspiron Compact | 2019 | false |
- (a) À l’aide d’un système de gestion de base de données, on envoie au serveur la requête SQL suivante :
SELECT salle, marque_ordi FROM Ordinateur ;
Quel résultat produit cette requête sur l’extrait de la relation Ordinateur donné ci-dessus ?
(b) Quel résultat produit la requête suivante sur l’extrait de la relation Ordinateur donné ci-dessus ?
SELECT nom_ordi, salle FROM Ordinateur WHERE video = true ;
Écrire une requête SQL donnant tous les attributs des ordinateurs correspondant aux années supérieures ou égales à 2017 ordonnées par dates croissantes.
(a) Pour quelle raison l’attribut salle ne peut-il pas être une clé primaire pour la relation Ordinateur ?
(b) On donne ci-dessous un extrait de la relation Imprimante :
Les 5 premières lignes de la relation Imprimante
nom_imprimante | marque_imp | modele_imp | salle | nom_ordi |
---|---|---|---|---|
imp_BTS_NB | HP | Laserjet pro M15w | 114 | Tech-62 |
imp_BTS_Couleur | Canon | Megatank Pixma G5050 | 114 | Tech-62 |
imp_salle-info1 | Brother | 2360DN | 223 | Gen-132 |
imp_salle-info1 | Brother | 2360DN | 223 | Gen-133 |
imp_salle-info1 | Brother | 2360DN | 223 | Gen-134 |
On prend (nom_imprimante, nom_ordi) comme clé primaire. Écrire le schéma relationnel de la relation Imprimante en précisant les éventuelles clés étrangères pour les autres relations.
- On donne ci-dessous un extrait de la relation Videoprojecteur :
Les 4 premières lignes de la relation Videoprojecteur
salle | marque_video | modele_video | tni |
---|---|---|---|
012 | Epson | xb27 | true |
114 | Sanyo | PLV-Z3 | false |
223 | Optoma | HD143X | false |
225 | Optoma | HD143X | true |
(a) Écrire une requête SQL pour ajouter à la relation Videoprojecteur le vidéoprojecteur nouvellement installé en salle 315 de marque NEC, modèle ME402X et non relié à un TNI.
(b) Écrire une requête SQL permettant de récupérer les attributs salle, nom_ordi, marque_video des ordinateurs connectés à un vidéoprojecteur équipé d’un TNI.