Fiche d’exercices de Bases de données et SQL avec corrigé

Fiche d’exercices de Bases de données et SQL gratuite et imprimable : 8 exercices, du niveau facile au niveau examen, avec corrigé. Imprimez-la ou enregistrez-la en PDF.

Pour les enseignants : gratuite à imprimer, copier et utiliser en classe. Chaque nouvelle fiche a de nouvelles valeurs et son propre corrigé. Un lien vers ExamProblems sur la page de votre cours est apprécié.

Nom: ____________________   Date: ____________

1.Facile

Qu'est-ce qu'une clé primaire (primary key) ?

  1. ALa première colonne de chaque table
  2. BUn mot de passe pour la base de données
  3. CUne colonne qui peut contenir des doublons mais ne doit jamais contenir NULL
  4. DUne colonne ou un ensemble de colonnes qui identifie de manière unique chaque ligne
2.Facile

Quelle instruction SQL permet de récupérer des données d'une table ?

  1. ACREATE
  2. BSELECT
  3. CINSERT
  4. DUPDATE
3.Facile

Un INNER JOIN renvoie :

  1. ALes lignes qui ne correspondent pas
  2. BUniquement les lignes ayant des valeurs correspondantes dans les deux tables
  3. CToutes les lignes des deux tables
  4. DToutes les lignes de la table de gauche, avec des NULL là où il n'y a pas de correspondance
4.Moyen

Quelle requête renvoie le salaire le plus élevé de chaque service ?

  1. ASELECT dept, salary FROM emp WHERE salary = MAX(salary)
  2. BSELECT dept, MAX(salary) FROM emp GROUP BY dept
  3. CSELECT dept, MAX(salary) FROM emp ORDER BY dept
  4. DSELECT MAX(dept), salary FROM emp GROUP BY salary
5.Moyen

Quelle requête renvoie le nombre de villes différentes dans la table customers ?

  1. ASELECT COUNT(DISTINCT city) FROM customers
  2. BSELECT SUM(DISTINCT city) FROM customers
  3. CSELECT COUNT(city) FROM customers GROUP BY city
  4. DSELECT DISTINCT COUNT(city) FROM customers
6.Moyen

Une table contient des lignes où col est NULL. Quelles lignes WHERE col = NULL renvoie-t-il ?

  1. AUniquement les lignes où col est NULL, comme avec IS NULL
  2. BToutes les lignes de la table
  3. CAucune ligne, car la comparaison est inconnue
  4. DUne erreur dans toutes les bases de données
7.Difficile

Une application exécute UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7 et signale un conflit si aucune ligne n'a été mise à jour. De quelle technique s'agit-il ?

  1. ALe verrouillage à deux phases strict avec des verrous de ligne
  2. BLa journalisation anticipée (WAL)
  3. CLe contrôle de concurrence optimiste
  4. DLe partitionnement (sharding) de la base de données
8.Difficile

Quel est un inconvénient connu de la décomposition des tables en BCNF par rapport à la 3NF ?

  1. ALa décomposition perd toujours des données lors de la jointure inverse
  2. BCertaines dépendances fonctionnelles peuvent ne plus être vérifiables au sein d'une seule table
  3. CLes tables en BCNF ne peuvent pas avoir de clé primaire
  4. DLa BCNF permet plus de redondance que la 3NF

Corrigé

  1. 1. D · Une colonne ou un ensemble de colonnes qui identifie de manière unique chaque ligne
  2. 2. B · SELECT
  3. 3. B · Uniquement les lignes ayant des valeurs correspondantes dans les deux tables
  4. 4. B · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  5. 5. A · SELECT COUNT(DISTINCT city) FROM customers
  6. 6. C · Aucune ligne, car la comparaison est inconnue
  7. 7. C · Le contrôle de concurrence optimiste
  8. 8. B · Certaines dépendances fonctionnelles peuvent ne plus être vérifiables au sein d'une seule table

Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.