Exercice 2 · Bac Numérique et Sciences Informatiques Métropole 2023 (sujet 2)

Thème : Bases de données relationnelles, SGBD et langage SQL · Tiré du sujet Métropole France 2 (2023)

Énoncé

EXERCICE 2 (3 points)

Cet exercice porte sur les bases de données et le langage SQL.

On considère une gestion simplifiée des voyages dans l'espace. La base de données utilisée est constituée de quatre relations nommées Astronaute, Fusee, Equipe et Vol. Voici le contenu des tables Astronaute, Fusee, Equipe et Vol.

Les clés primaires sont soulignées et les clefs étrangères sont précédées d'un #:

On pourra utiliser les mots clés suivants: COUNT, FROM, INSERT, INTO, JOIN, ON, ORDER BY, SELECT, VALUES, WHERE.

Le mot clé COUNT permet de récupérer le nombre d'enregistrements issu de la requête.

Par exemple, la requête suivante renvoie la valeur 4:

SELECT COUNT (*) FROM Astronaute;

Le mot clé ORDER BY permet de trier les éléments par ordre alphabétique. Par exemple, la requête suivante:

SELECT modele FROM Fusee ORDER BY modele;

renvoie la table:

'Falcon 9'

'SLS'

'Soyouz'

'Starship'

1. On s'intéresse ici à la notion de clés primaire et étrangère.

a.

b.

Dans la table Astronaute, la clé primaire est id_astronaute. Expliquer pourquoi cette requête SQL renvoie une erreur:

INSERT INTO Astronaute

VALUES (3, 'HAIGNERE', 'Claudie', 'français', 3);

c.

Le schéma relationnel de la table Astronaute est:

Astronaute (id_astronaute: INT, nom: TEXT, prenom: TEXT, nationalite: TEXT, nb_vols: INT)

2. On s'intéresse ici à la récupération d'informations issues de la base de données.

a.

Écrire le résultat que la requête suivante renvoie:

SELECT COUNT(*)

FROM Fusee

WHERE constructeur = 'SpaceX';

b.

c.

3.

a.

Recopier et compléter les requêtes SQL suivantes permettant d'ajouter un cinquième vol avec la fusée 'Soyouz' le 12/04/2023 avec l'équipage composé de PESQUET Thomas et MCARTHUR Megan. On ne s'intéresse pas ici à la mise à jour qui suivra.

INSERT INTO Vol VALUES (

);

INSERT INTO Equipe VALUES (

);

INSERT INTO

VALUES (

);

b.

Énoncé: Exercice 2 · Bac Numérique et Sciences Informatiques Métropole 2023 (sujet 2)

Corrigé

Corrigé proposé par AprenAI (non officiel)

1. a. Donner la définition d'une clé primaire.

Réponse : Attribut (ou ensemble d'attributs) permettant d'identifier de manière unique chaque enregistrement (ou uplet) d'une table.

1. b. Expliquer pourquoi cette requête SQL renvoie une erreur : INSERT INTO Astronaute VALUES (3, 'HAIGNERE', 'Claudie', 'français', 3);

Réponse : La clé primaire 3 est déjà attribuée à l'astronaute MAURER (violation de la contrainte d'unicité de la clé primaire).

1. c. Écrire le schéma relationnel de la table Fusee en précisant le domaine de chaque attribut.

Réponse : Fusee (id_fusee : INT, modele : TEXT, constructeur : TEXT, nb_places : INT)

2. a. Écrire le résultat que la requête suivante renvoie : SELECT COUNT(*) FROM Fusee WHERE constructeur = 'SpaceX';

Réponse : 2

2. b. Écrire une requête SQL qui renvoie le modèle et le constructeur des fusées ayant au moins quatre places.

Réponse : ```sql SELECT modele, constructeur FROM Fusee WHERE nb_places >= 4; ```

2. c. Écrire une requête SQL qui renvoie les noms et prénoms des astronautes dans l'ordre alphabétique du nom.

Réponse : ```sql SELECT nom, prenom FROM Astronaute ORDER BY nom; ```

Les réponses des 5 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 · Métropole 2023 (sujet 1) · Exercice 2 · Métropole 2022 (sujet 1) ›

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