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 GROUP BY dans une requête ?
AIl joint deux tables sur leurs colonnes communes
BIl supprime les lignes contenant des valeurs NULL
CIl trie les lignes du résultat par ordre alphabétique
DIl regroupe les lignes ayant les mêmes valeurs pour calculer les agrégats par groupe
2.Facile
Qu'est-ce qu'une clé composée (composite key) ?
AUne clé générée par la base de données
BUne clé stockée dans une table séparée
CUne clé formée de deux colonnes ou plus
DUne clé qui autorise les doublons
3.Facile
Une clé étrangère (foreign key) est :
AUne clé utilisée par des utilisateurs étrangers
BUne clé toujours chiffrée
CUne colonne dont les valeurs doivent être uniques sur toutes les lignes de la table
DUne colonne qui fait référence à la clé primaire d'une autre table
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 :
ADe lecture fantôme
BD'anomalie de suppression
CD'anomalie d'insertion
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 ?
ACombiner la table avec elle-même au moyen de UNION ALL et d'un filtre WHERE
BCréer une seconde copie de la table sur disque
CJoindre la table employees à elle-même avec deux alias
DUtiliser uniquement GROUP BY manager_id
6.Moyen
Que renvoie EXCEPT (appelé MINUS dans Oracle) ?
ALes lignes de la seconde requête qui n'apparaissent pas dans la première
BToutes les lignes des deux requêtes, sans doublons
CLes lignes présentes dans les deux requêtes
DLes lignes de la première requête qui n'apparaissent pas dans la seconde
7.Difficile
Quel niveau d'isolation empêche les lectures sales (dirty reads) mais autorise encore les lectures non répétables ?
ASerializable
BRead uncommitted
CRepeatable read
DRead committed
8.Difficile
Que montre EXPLAIN (ou EXPLAIN ANALYZE dans PostgreSQL) pour une requête ?
ALe plan d'exécution choisi par l'optimiseur, comme les parcours et les méthodes de jointure
BLa signification de chaque mot-clé SQL de la requête
CLa liste des utilisateurs qui ont exécuté la requête
DUniquement une réécriture de la requête en notation d'algèbre relationnelle
Corrigé
1. D · Il regroupe les lignes ayant les mêmes valeurs pour calculer les agrégats par groupe
2. C · Une clé formée de deux colonnes ou plus
3. D · Une colonne qui fait référence à la clé primaire d'une autre table
4. D · D'anomalie de mise à jour
5. C · Joindre la table employees à elle-même avec deux alias
6. D · Les lignes de la première requête qui n'apparaissent pas dans la seconde
7. D · Read committed
8. A · Le plan d'exécution choisi par l'optimiseur, comme les parcours et les méthodes de jointure
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.