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é donne à une colonne ou à une table un autre nom temporaire dans une requête ?

  1. AAS
  2. BNAME
  3. CALIAS
  4. DRENAME
2.Facile

Dans le modèle relationnel, comment appelle-t-on une ligne d'une table ?

  1. AUn attribut
  2. BUn domaine
  3. CUn tuple (n-uplet)
  4. DUn schéma
3.Facile

Que fait WHERE country IN ('NL', 'BE', 'DE') ?

  1. AIl trie les lignes dans l'ordre de la liste
  2. BIl conserve les lignes dont le pays n'est pas dans la liste
  3. CIl conserve les lignes dont la valeur de country contient les trois codes à la fois
  4. DIl conserve les lignes dont le pays est égal à l'une des valeurs de la liste
4.Moyen

Une table stocke l'adresse du client sur chaque ligne de commande. Modifier l'adresse dans une ligne mais pas dans les autres est un exemple :

  1. AD'anomalie de suppression
  2. BDe lecture fantôme
  3. CD'anomalie d'insertion
  4. DD'anomalie de mise à jour
5.Moyen

Une table employees possède une colonne manager_id qui fait référence à un autre employé. Comment lister chaque employé à côté du nom de son responsable ?

  1. AJoindre la table employees à elle-même avec deux alias
  2. BCréer une seconde copie de la table sur disque
  3. CCombiner la table avec elle-même au moyen de UNION ALL et d'un filtre WHERE
  4. DUtiliser uniquement GROUP BY manager_id
6.Moyen

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

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

Que montre EXPLAIN (ou EXPLAIN ANALYZE dans PostgreSQL) pour une requête ?

  1. AUniquement une réécriture de la requête en notation d'algèbre relationnelle
  2. BLa signification de chaque mot-clé SQL de la requête
  3. CLe plan d'exécution choisi par l'optimiseur, comme les parcours et les méthodes de jointure
  4. DLa liste des utilisateurs qui ont exécuté la requête
8.Difficile

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

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

Corrigé

  1. 1. A · AS
  2. 2. C · Un tuple (n-uplet)
  3. 3. D · Il conserve les lignes dont le pays est égal à l'une des valeurs de la liste
  4. 4. D · D'anomalie de mise à jour
  5. 5. A · Joindre la table employees à elle-même avec deux alias
  6. 6. B · SELECT COUNT(DISTINCT city) FROM customers
  7. 7. C · Le plan d'exécution choisi par l'optimiseur, comme les parcours et les méthodes de jointure
  8. 8. D · L'enregistrement de journal d'une modification doit atteindre le support stable avant la page de données modifiée

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