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 ?
AIl les joint côte à côte sur une clé
BIl ne garde que les lignes présentes dans les deux
CIl ne garde que les lignes qui apparaissent dans la première requête mais pas dans la seconde
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 ?
ALe langage de contrôle de données (DCL)
BLe langage de manipulation de données (DML)
CLe langage de définition de données (DDL)
DLe langage de contrôle des transactions (TCL)
3.Facile
Que renvoie un CROSS JOIN ?
AUniquement les lignes de la première table
BUniquement les lignes qui ne correspondent pas
CToutes les combinaisons de lignes des deux tables
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 ?
AUne erreur dans toutes les bases de données
BToutes les lignes de la table
CAucune ligne, car la comparaison est inconnue
DUniquement les lignes où col est NULL, comme avec IS NULL
5.Moyen
Quelle affirmation sur HAVING est correcte ?
AElle doit figurer avant WHERE dans l'instruction SELECT
BElle peut utiliser des fonctions d'agrégation pour filtrer les groupes
CElle trie les résultats
DElle ne peut pas être utilisée avec GROUP BY
6.Moyen
En algèbre relationnelle, l'opérateur de projection (π) correspond :
AAu choix des colonnes qui apparaissent dans le résultat
BAu choix des lignes qui satisfont une condition donnée
CAu tri du résultat
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) ?
AL'enregistrement de journal d'une modification doit atteindre le support stable avant la page de données modifiée
BLes pages de données doivent être écrites avant le journal
CChaque requête doit être journalisée avant d'être analysée
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 ?
ACOUNT(o.id) ne compte que les clients distincts
BCOUNT(*) n'est pas autorisé après une jointure
CCOUNT(*) compte pour 1 la ligne remplie de NULL des clients sans commande
DCOUNT(*) ignore les lignes contenant des valeurs NULL
Corrigé
1. D · Il les combine en un seul résultat et supprime les lignes en double
2. C · Le langage de définition de données (DDL)
3. C · Toutes les combinaisons de lignes des deux tables
4. C · Aucune ligne, car la comparaison est inconnue
5. B · Elle peut utiliser des fonctions d'agrégation pour filtrer les groupes
6. A · Au choix des colonnes qui apparaissent dans le résultat
7. A · L'enregistrement de journal d'une modification doit atteindre le support stable avant la page de données modifiée
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.