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

Que fait UNION avec les résultats de deux requêtes SELECT ?

  1. AIl les joint côte à côte sur une clé
  2. BIl ne garde que les lignes présentes dans les deux
  3. CIl ne garde que les lignes qui apparaissent dans la première requête mais pas dans la seconde
  4. DIl les combine en un seul résultat et supprime les lignes en double
2.Facile

Des instructions comme CREATE, ALTER et DROP appartiennent à quelle partie de SQL ?

  1. ALe langage de contrôle de données (DCL)
  2. BLe langage de manipulation de données (DML)
  3. CLe langage de définition de données (DDL)
  4. DLe langage de contrôle des transactions (TCL)
3.Facile

Que renvoie un CROSS JOIN ?

  1. AUniquement les lignes de la première table
  2. BUniquement les lignes qui ne correspondent pas
  3. CToutes les combinaisons de lignes des deux tables
  4. DUniquement les lignes qui correspondent sur une colonne clé commune
4.Moyen

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

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

Quelle affirmation sur HAVING est correcte ?

  1. AElle doit figurer avant WHERE dans l'instruction SELECT
  2. BElle peut utiliser des fonctions d'agrégation pour filtrer les groupes
  3. CElle trie les résultats
  4. DElle ne peut pas être utilisée avec GROUP BY
6.Moyen

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

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

Qu'exige la règle de la journalisation anticipée (write-ahead logging, WAL) ?

  1. AL'enregistrement de journal d'une modification doit atteindre le support stable avant la page de données modifiée
  2. BLes pages de données doivent être écrites avant le journal
  3. CChaque requête doit être journalisée avant d'être analysée
  4. DLe journal n'est écrit qu'après une panne
8.Difficile

Après customers LEFT JOIN orders, pourquoi utiliser COUNT(o.id) plutôt que COUNT(*) pour compter les commandes par client ?

  1. ACOUNT(o.id) ne compte que les clients distincts
  2. BCOUNT(*) n'est pas autorisé après une jointure
  3. CCOUNT(*) compte pour 1 la ligne remplie de NULL des clients sans commande
  4. DCOUNT(*) ignore les lignes contenant des valeurs NULL

Corrigé

  1. 1. D · Il les combine en un seul résultat et supprime les lignes en double
  2. 2. C · Le langage de définition de données (DDL)
  3. 3. C · Toutes les combinaisons de lignes des deux tables
  4. 4. C · Aucune ligne, car la comparaison est inconnue
  5. 5. B · Elle peut utiliser des fonctions d'agrégation pour filtrer les groupes
  6. 6. A · Au choix des colonnes qui apparaissent dans le résultat
  7. 7. A · L'enregistrement de journal d'une modification doit atteindre le support stable avant la page de données modifiée
  8. 8. C · COUNT(*) compte pour 1 la ligne remplie de NULL des clients sans commande

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