Exercice 1 · Bac Numérique et Sciences Informatiques Nouvelle-Calédonie 2023 (jour 2)

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

Énoncé

Exercice 1 (4 points)

Dans cet exercice, on utilise le langage SQL (Structured Query Language).

Une association sportive « JUDOKA » demande à ses bénévoles d'assurer une permanence téléphonique du lundi au vendredi de 8h à 12h et de 14h à 17h.

Le président de cette association charge le secrétaire de créer une base de données qui stockera des informations concernant les bénévoles de cette association.

Le secrétaire utilise un système de gestion de base de données relationnelles (SGBDR) pour créer une base de données.

1)

Le secrétaire utilise le code ci-dessous.

Benevole ( idbenevole, nom, prenom, rue, code_postal, ville, telephone, #idmission)

Mission ( idmission, designation)

Les clés primaires sont soulignées et les clés étrangères sont précédées du caractère #.

2)

Le secrétaire exécute la requête ci-dessous. Expliquer l'objectif de celle-ci.

INSERT INTO Benevole

(nom, prenom, rue, code_postal, ville, telephone, idmission)

VALUES

('POHU', 'Dominique', '12 rue de la Frairie', '49000', 'Angers',

'+336123456', 1),

('MOISY', 'Camille', '33 rue Maurice Bot', '49400', 'Cholet',

'+337987654', 2);

3)

Les bénévoles réalisent une vente de calendriers au profit de l'association. Une table Collecte a été créée pour répertorier chaque année les ventes réalisées.

Collecte ( idcollecte, #idbenevole, annee_ventes, montant)

idbenevole fait référence à la table Benevole;

annee_ventes contient l'année lors de laquelle le bénévole apporte au trésorier sa collecte dont la valeur en euros est donnée par l'attribut montant. Il s'agit d'un nombre entier.

4)

Le secrétaire a créé la table suivante afin de suivre l'activité des bénévoles.

Presence ( idpresence, jour, nb_heures)

a. Le secrétaire exécute la requête suivante pour insérer un premier enregistrement dans la table:

INSERT INTO Presence(idpresence, jour, nb_heures)

VALUES ('11-02-2020', 2);

b. L'erreur de la question précédente a été corrigée. Le secrétaire exécute la requête suivante pour obtenir la liste des noms des bénévoles présents plus de 2 heures sur une journée:

SELECT nom FROM Presence WHERE nb_heures > 2;

Énoncé: Exercice 1 · Bac Numérique et Sciences Informatiques Nouvelle-Calédonie 2023 (jour 2)

Corrigé

Corrigé proposé par AprenAI (non officiel)

1) a. idbenevole est déclaré comme clé primaire de la table Benevole. Préciser son rôle.

Réponse : Identifier de manière unique chaque bénévole (chaque enregistrement/n-uplet de la table Benevole).

1) b. idmission est déclaré comme clé étrangère de la table Benevole. Préciser son rôle.

Réponse : Faire référence à la clé primaire idmission de la table Mission afin d'associer chaque bénévole à sa mission (garantir l'intégrité référentielle).

2) Expliquer l'objectif de la requête INSERT INTO Benevole...

Réponse : Insérer deux nouveaux bénévoles (Dominique POHU et Camille MOISY) avec leurs informations personnelles et leur mission dans la table Benevole.

3) a. Écrire une requête SQL permettant d'afficher l'extrait de la table Collecte avec les ventes réalisées en 2020.

Réponse : ```sql SELECT * FROM Collecte WHERE annee_ventes = 2020 ; ```

Les réponses des 4 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 · Nouvelle-Calédonie 2023 (jour 1) · Exercice 1 · Nouvelle-Calédonie 2022 (jour 1) ›

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