Exercice 1 - Partie B · Bac Numérique et Sciences Informatiques Amérique du Sud 2023 (jour 1)

Thème : Bases de données relationnelles, SGBD et langage SQL · Tiré du sujet Jour 1 (2023)

Énoncé

EXERCICE 1 (5 points)

Les deux parties sont indépendantes.

Partie A

La responsable informatique doit gérer le réseau informatique de son entreprise représenté ci-dessous dans lequel R1, R2, R3, R4, R5, R6, R7 et R8 sont des routeurs. Elle décide d'utiliser le protocole RIP pour configurer les tables de routages.

Ce protocole est un protocole à vecteurs de distance. La métrique permettant de décider du meilleur chemin vers un routeur distant est le nombre de sauts.

Partie B

Dans cette partie, on pourra utiliser les mots clés suivants du langage SQL:

SELECT, INSERT INTO, WHERE, UPDATE, JOIN, ORDER BY

La commande ORDER BY propriété permet de trier dans l'ordre croissant les résultats d'une requête selon l'attribut propriété.

Pour gérer son réseau informatique, la responsable achète son matériel à la société BeauReseau qui dispose d'une base de données dont le schéma relationnel est ci-dessous.

Les clés primaires sont soulignées et les clés étrangères sont précédées du caractère #. Ainsi l'attribut idRouteur de la relation Commande est une clé étrangère qui fait référence à l'attribut id de la relation Routeur et l'attribut idClient de la relation Commande est une clé étrangère qui fait référence à l'attribut id de la relation Client.

Pour les questions où on demande des résultats de requêtes, on considèrera les extraits des tables remplies ainsi:

Table Routeur

id

nom

prix

1 · C6Po-1000 · 1200

2 · Coq6-300 · 6000

3 · Al-200 · 6000

4 · C6Po-9000 · 9000

Table Client

id

nom

adresse

courriel

1 · Knuth · rue Donald, Tampa · dknuth@usa.org

2 · Hooper · rue Grace, Boston · ghooper@usa.org

3 · Torvalds · rue Linus, Helsinki · ltorvalds@finland.org

4 · Pouzin · rue Louis, Paris · lpouzin@france.fr

Table Commande

idClient

idRouteur

quantite

1 · 1 · 4

1 · 3 · 1

2 · 1 · 1

2 · 1 · 5

3 · 2 · 3

4 · 4 · 1

4 · 1 · 5

5.

On considère la requête d'insertion suivante:

INSERT INTO Routeur(id, nom, prix) VALUES(3, 'Dali-32', 4000)

Expliquer pourquoi cette requête renvoie une erreur.

6.

Proposer une requête qui renvoie le nom de tous les routeurs dont le prix est compris entre 2500 (inclus) et 7000 euro (inclus).

7.

On considère la requête suivante:

SELECT nom FROM Client

JOIN Commande ON Commande.idClient = Client.id

WHERE Commande.quantite = 1

En considérant les extraits des tables fournies, préciser ce que renvoie cette requête.

8.

Proposer une requête qui renvoie les noms triés dans l'ordre croissant des routeurs achetés par le client n°2.

Énoncé: Exercice 1 - Partie B · Bac Numérique et Sciences Informatiques Amérique du Sud 2023 (jour 1)

Corrigé

Corrigé proposé par AprenAI (non officiel)

5. Expliquer pourquoi cette requête renvoie une erreur.

Réponse : Un enregistrement avec l'identifiant id = 3 existe déjà dans la table Routeur ('Al-200'). Comme 'id' est la clé primaire de la table, il doit être unique. Insérer une nouvelle ligne avec id = 3 viole la contrainte d'unicité de la clé primaire.

6. Proposer une requête qui renvoie le nom de tous les routeurs dont le prix est compris entre 2500 (inclus) et 7000 euro (inclus).

Réponse : ```sql SELECT nom FROM Routeur WHERE prix >= 2500 AND prix <= 7000; ```

Les réponses des 2 questions restantes et l’explication pas à pas sont réservées aux membres Premium. Premium

Résous-le ici : correction automatique, indices et corrigé détaillé.

‹ Exercice 1 - Bases de données relationnelles et S… · Amérique du Sud 2025 (jour 2) · Exercice 2 - Partie B : Base de données · Amérique du Sud 2023 (jour 2) ›

Plus d’exercices de Bases de données relationnelles, SGBD et langage SQL