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

Quelles lignes WHERE price BETWEEN 10 AND 20 sélectionne-t-il ?

  1. ALes lignes dont le prix est supérieur à 10 et inférieur à 20, 10 et 20 exclus
  2. BLes lignes dont le prix va de 10 à 20, bornes 10 et 20 incluses
  3. CLes lignes dont le prix est en dehors de l'intervalle de 10 à 20
  4. DUniquement les lignes dont le prix est égal à 10 ou à 20
2.Facile

Qu'est-ce qu'une clé de substitution (surrogate key) ?

  1. AUne clé qui fait référence à une autre table
  2. BUne clé utilisée uniquement dans les vues
  3. CUne clé tirée de données réelles, comme une adresse e-mail
  4. DUn identifiant artificiel sans signification métier, comme un id auto-incrémenté
3.Facile

Quel mot-clé trie le résultat d'une requête ?

  1. AGROUP BY
  2. BARRANGE
  3. CSORT
  4. DORDER BY
4.Moyen

En algèbre relationnelle, l'opérateur de sélection (σ) correspond à quelle clause SQL ?

  1. AWHERE
  2. BLa liste du SELECT
  3. CORDER BY
  4. DGROUP BY
5.Moyen

En algèbre relationnelle, l'opérateur de projection (π) correspond :

  1. AAu choix des lignes qui satisfont une condition donnée
  2. BÀ la combinaison de deux tables sur une clé
  3. CAu tri du résultat
  4. DAu choix des colonnes qui apparaissent dans le résultat
6.Moyen

Une clé étrangère est déclarée avec ON DELETE CASCADE. Que se passe-t-il quand une ligne parente est supprimée ?

  1. ALa clé étrangère des lignes enfants est mise à NULL automatiquement
  2. BLa suppression est toujours refusée
  3. CLa ligne parente est copiée dans une table d'archive
  4. DLes lignes enfants qui y font référence sont supprimées automatiquement
7.Difficile

La requête FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' élimine de façon inattendue les clients sans commande. Pourquoi ?

  1. ALEFT JOIN ne conserve jamais les lignes sans correspondance
  2. BLa condition WHERE sur o rejette les lignes remplies de NULL, ce qui en fait une jointure interne
  3. Cstatus est un mot réservé
  4. DLa jointure devrait utiliser USING au lieu de ON
8.Difficile

Quel niveau d'isolation empêche les lectures sales (dirty reads) mais autorise encore les lectures non répétables ?

  1. ARead committed
  2. BRead uncommitted
  3. CRepeatable read
  4. DSerializable

Corrigé

  1. 1. B · Les lignes dont le prix va de 10 à 20, bornes 10 et 20 incluses
  2. 2. D · Un identifiant artificiel sans signification métier, comme un id auto-incrémenté
  3. 3. D · ORDER BY
  4. 4. A · WHERE
  5. 5. D · Au choix des colonnes qui apparaissent dans le résultat
  6. 6. D · Les lignes enfants qui y font référence sont supprimées automatiquement
  7. 7. B · La condition WHERE sur o rejette les lignes remplies de NULL, ce qui en fait une jointure interne
  8. 8. A · Read committed

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