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
Dans le modèle relationnel, comment appelle-t-on une ligne d'une table ?
AUn schéma
BUn attribut
CUn domaine
DUn tuple (n-uplet)
2.Facile
Qu'est-ce qu'une clé candidate ?
AUn ensemble de colonnes partagé entre deux tables pour relier leurs lignes
BUn ensemble minimal de colonnes qui identifie de manière unique chaque ligne
CUne colonne en attente de devenir une clé étrangère
DToute colonne contenant des valeurs NULL
3.Facile
Que fait COMMIT dans une transaction ?
AIl rend permanentes toutes les modifications de la transaction
BIl crée une nouvelle table
CIl annule toutes les modifications effectuées depuis le début de la transaction
DIl verrouille toute la base de données
4.Moyen
Qu'est-ce qu'un déclencheur (trigger) de base de données ?
ADu code exécuté automatiquement lorsqu'un événement précis, comme INSERT, UPDATE ou DELETE, se produit sur une table
BUne sauvegarde planifiée de la base de données
CUn type d'index qui accélère les recherches
DUne requête qu'un utilisateur lance à la main
5.Moyen
Qu'apporte une expression de table commune (WITH name AS (...)) ?
AUn index sur une colonne
BUn nouvel utilisateur de la base de données
CUn résultat temporaire nommé, utilisable au sein d'une seule instruction
DUne table permanente qui reste stockée sur disque jusqu'à sa suppression
6.Moyen
Pourquoi SELECT price * 2 AS double_price FROM t WHERE double_price > 10 échoue-t-il dans la plupart des bases de données ?
AWHERE est évalué avant la liste du SELECT, donc l'alias n'existe pas encore
BL'arithmétique n'est pas autorisée dans la liste du SELECT
CWHERE ne peut comparer que des colonnes de texte
DLes alias ne peuvent pas contenir de tiret bas
7.Difficile
Que calcule SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales ?
ALe total de tous les montants sur chaque ligne
BUn total cumulé de amount, ordonné par day
CUne ligne par jour avec uniquement le total de ce jour
DLe montant moyen par jour
8.Difficile
Que renvoie la requête suivante : SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students) ?
AUne erreur, car les sous-requêtes ne sont pas autorisées dans WHERE
BUniquement les étudiants ayant la note la plus élevée
CLes étudiants dont la note est supérieure à la note moyenne
DLa note moyenne de tous les étudiants
Corrigé
1. D · Un tuple (n-uplet)
2. B · Un ensemble minimal de colonnes qui identifie de manière unique chaque ligne
3. A · Il rend permanentes toutes les modifications de la transaction
4. A · Du code exécuté automatiquement lorsqu'un événement précis, comme INSERT, UPDATE ou DELETE, se produit sur une table
5. C · Un résultat temporaire nommé, utilisable au sein d'une seule instruction
6. A · WHERE est évalué avant la liste du SELECT, donc l'alias n'existe pas encore
7. B · Un total cumulé de amount, ordonné par day
8. C · Les étudiants dont la note est supérieure à la note moyenne
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.