Exercice 2 · Bac Numérique et Sciences Informatiques Amérique du Nord 2024 (jour 2)

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

Énoncé

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

Un pharmacien nouvellement installé décide de créer son propre système de gestion des médicaments qu'il délivre à ses clients.

Pour sa base de données relationnelle, il a déjà élaboré la première relation à l'aide des données indiquées sur les cartes vitales de ses deux premiers clients:

client (id_client: INT, nom_client: VARCHAR(30), prenom_client: VARCHAR(30), num_secu_sociale: VARCHAR(15))

client

id_client

nom_client

prenom_client

num_secu_sociale

1

Martin

Sophie

202103812326129

2

Dufour

Marc

105073817009595

1.

Écrire le résultat de l'exécution de la requête SQL suivante:

SELECT nom_client, prenom_client

FROM client

ORDER BY nom_client;

nom_client

prenom_client

Pour écrire la relation medicament, il doit utiliser les informations fournies par la notice des médicaments. En voici une ci-dessous:

La relation medicament suivante a été obtenue à l'aide de ces notices:

medicament (id_medic: INT, nom_medic: VARCHAR(30), categorie: VARCHAR(20), conditionnement: INT, quantite: INT, prix: FLOAT)

medicament

id_medic

nom_medic

categorie

conditionnement

quantite

prix

1

Paracétamol 1 gramme CP

antalgique

8

50

3,50

2

Acide acétylsalicylique

antalgique

8

20

2,30

3

Gel hydroalcoolique 100 ml

désinfectant

1

300

2,30

4

Acide ascorbique

vitamine

10

450

5,50

2.

Écrire une requête SQL permettant d'afficher les noms de tous les médicaments dont le prix est strictement inférieur à 3 euros.

Madame Martin présente au pharmacien une nouvelle ordonnance:

Il saisit les informations de cette ordonnance dans la relation ordonnance, chaque médicament prescrit correspondant à un enregistrement dans la table ci-dessous.

ordonnance

id_ordo

id_client

date_ordo

id_medic

nb_boites

6

2

2023-11-29

2

2

7

1

2023-12-13

1

...

8

1

2023-12-13

4

...

3.

Écrire une requête SQL permettant d'ajouter les informations de la carte vitale de sa troisième cliente présentée ci-dessous:

4.

Donner les attributs qui doivent être déclarés comme clés étrangères de la relation ordonnance et en préciser l'utilité.

5.

Indiquer, pour les lignes 7 et 8 de la table ordonnance, le nombre de boites prescrites.

Ligne 7 (Paracétamol):

boîte(s)

Ligne 8 (Acide ascorbique):

boîte(s)

6.

Écrire la requête SQL mettant à jour la quantité du médicament Acide ascorbique en stock dans l'officine du pharmacien suite au passage de Madame Martin.

7.

Calculer le coût total des médicaments fournis à Madame Martin (on ne demande pas d'écrire une requête ici, mais de calculer le coût total en justifiant le calcul).

€

8.

Écrire la requête SQL permettant d'afficher le nom du médicament pour l'ordonnance ayant l' id_ordo numéro 6.

Énoncé: Exercice 2 · Bac Numérique et Sciences Informatiques Amérique du Nord 2024 (jour 2)

Corrigé

Corrigé proposé par AprenAI (non officiel)

1. Première ligne - nom_client

Réponse : Dufour

1. Première ligne - prenom_client

Réponse : Marc

1. Deuxième ligne - nom_client

Réponse : Martin

1. Deuxième ligne - prenom_client

Réponse : Sophie

2. Écrire une requête SQL permettant d'afficher les noms de tous les médicaments dont le prix est strictement inférieur à 3 euros.

Réponse : ```sql SELECT nom_medic FROM medicament WHERE prix < 3; ```

3. Écrire une requête SQL permettant d'ajouter les informations de la carte vitale de sa troisième cliente

Réponse : ```sql INSERT INTO client VALUES (3, 'DURAND', 'NATHALIE', '269054958815780'); ```

4. Donner les attributs qui doivent être déclarés comme clés étrangères de la relation ordonnance

Réponse : id_client, id_medic

Les réponses des 7 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 3 - Partie B · Amérique du Nord 2024 (jour 1) · Exercice 1 - Bases de données · Amérique du Nord 2023 (jour 1) ›

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