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

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

  1. ASORT
  2. BORDER BY
  3. CGROUP BY
  4. DARRANGE
2.Facile

À quoi sert un diagramme entité-association (ER) ?

  1. AÀ modéliser les entités, leurs attributs et leurs associations lors de la conception d'une base de données
  2. BÀ lister les utilisateurs d'une base de données
  3. CÀ montrer comment une requête est exécutée
  4. DÀ mesurer les performances d'une base de données
3.Facile

Que fait COMMIT dans une transaction ?

  1. AIl verrouille toute la base de données
  2. BIl annule toutes les modifications effectuées depuis le début de la transaction
  3. CIl rend permanentes toutes les modifications de la transaction
  4. DIl crée une nouvelle table
4.Moyen

Une vue (view) en SQL est :

  1. AUn type d'index
  2. BUne copie d'une table sur le disque
  3. CUn écran du client de base de données pour parcourir les tables
  4. DUne requête enregistrée qui se comporte comme une table virtuelle
5.Moyen

Que renvoie SELECT name, CASE WHEN grade >= 5,5 THEN 'pass' ELSE 'fail' END FROM results ?

  1. ALe nombre d'étudiants reçus et recalés
  2. BChaque nom avec l'étiquette 'pass' ou 'fail' selon la note
  3. CUne erreur, car CASE n'est pas autorisé dans SELECT
  4. DUniquement les étudiants reçus
6.Moyen

Pourquoi crée-t-on des index sur des colonnes ?

  1. APour rendre les insertions et les mises à jour plus rapides sur ces colonnes
  2. BPour économiser de l'espace disque
  3. CPour empêcher les valeurs NULL
  4. DPour accélérer les recherches et les jointures sur ces colonnes
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 jointure devrait utiliser USING au lieu de ON
  3. Cstatus est un mot réservé
  4. DLa condition WHERE sur o rejette les lignes remplies de NULL, ce qui en fait une jointure interne
8.Difficile

Quelle fonction de fenêtrage attribue 1, 2, 3, ... aux lignes de chaque partition, sans ex æquo ?

  1. ADENSE_RANK()
  2. BCOUNT()
  3. CROW_NUMBER()
  4. DRANK()

Corrigé

  1. 1. B · ORDER BY
  2. 2. A · À modéliser les entités, leurs attributs et leurs associations lors de la conception d'une base de données
  3. 3. C · Il rend permanentes toutes les modifications de la transaction
  4. 4. D · Une requête enregistrée qui se comporte comme une table virtuelle
  5. 5. B · Chaque nom avec l'étiquette 'pass' ou 'fail' selon la note
  6. 6. D · Pour accélérer les recherches et les jointures sur ces colonnes
  7. 7. D · La condition WHERE sur o rejette les lignes remplies de NULL, ce qui en fait une jointure interne
  8. 8. C · ROW_NUMBER()

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