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

Dans un motif LIKE, que représente le caractère générique _ (tiret bas) ?

  1. AZéro caractère ou plus
  2. BUne lettre quelconque, mais pas un chiffre
  3. CExactement un caractère
  4. DUn caractère espace
2.Facile

Que fait GROUP BY dans une requête ?

  1. AIl joint deux tables sur leurs colonnes communes
  2. BIl trie les lignes du résultat par ordre alphabétique
  3. CIl supprime les lignes contenant des valeurs NULL
  4. DIl regroupe les lignes ayant les mêmes valeurs pour calculer les agrégats par groupe
3.Facile

Une clé étrangère (foreign key) est :

  1. AUne colonne qui fait référence à la clé primaire d'une autre table
  2. BUne clé toujours chiffrée
  3. CUne colonne dont les valeurs doivent être uniques sur toutes les lignes de la table
  4. DUne clé utilisée par des utilisateurs étrangers
4.Moyen

Que renvoie SELECT SUM(amount) FROM orders lorsque la clause WHERE ne correspond à aucune ligne ?

  1. ANULL
  2. B0
  3. CUne erreur
  4. DUne chaîne vide
5.Moyen

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

  1. AÀ la combinaison de deux tables sur une clé
  2. BAu tri du résultat
  3. CAu choix des colonnes qui apparaissent dans le résultat
  4. DAu choix des lignes qui satisfont une condition donnée
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. ALes lignes enfants qui y font référence sont supprimées automatiquement
  2. BLa suppression est toujours refusée
  3. CLa clé étrangère des lignes enfants est mise à NULL automatiquement
  4. DLa ligne parente est copiée dans une table d'archive
7.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. BSerializable
  3. CRead uncommitted
  4. DRepeatable read
8.Difficile

Une table a un million de lignes et une colonne booléenne is_active vraie pour 95% d'entre elles. Pourquoi l'optimiseur pourrait-il ignorer un index sur is_active pour WHERE is_active = TRUE ?

  1. ALa plupart des lignes correspondent, donc un parcours complet de la table coûte moins cher que de nombreux accès par l'index
  2. BOn ne peut pas créer d'index sur des colonnes booléennes
  3. CL'optimiseur n'utilise jamais d'index dans les clauses WHERE
  4. DL'index traite TRUE comme NULL

Corrigé

  1. 1. C · Exactement un caractère
  2. 2. D · Il regroupe les lignes ayant les mêmes valeurs pour calculer les agrégats par groupe
  3. 3. A · Une colonne qui fait référence à la clé primaire d'une autre table
  4. 4. A · NULL
  5. 5. C · Au choix des colonnes qui apparaissent dans le résultat
  6. 6. A · Les lignes enfants qui y font référence sont supprimées automatiquement
  7. 7. A · Read committed
  8. 8. A · La plupart des lignes correspondent, donc un parcours complet de la table coûte moins cher que de nombreux accès par l'index

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