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
Qu'est-ce qu'une clé composée (composite key) ?
AUne clé stockée dans une table séparée
BUne clé qui autorise les doublons
CUne clé formée de deux colonnes ou plus
DUne clé générée par la base de données
2.Facile
Quel opérateur sert à une recherche simple par motif de texte dans une clause WHERE ?
ACONTAINS
BSIMILAR
CMATCH
DLIKE
3.Facile
Dans le modèle relationnel, comment appelle-t-on une ligne d'une table ?
AUn domaine
BUn attribut
CUn tuple (n-uplet)
DUn schéma
4.Moyen
Quelle requête liste les clients qui n'ont jamais passé de commande ?
ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
CSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
5.Moyen
Que renvoie SELECT SUM(amount) FROM orders lorsque la clause WHERE ne correspond à aucune ligne ?
AUne chaîne vide
B0
CUne erreur
DNULL
6.Moyen
Que renvoie EXCEPT (appelé MINUS dans Oracle) ?
ALes lignes de la première requête qui n'apparaissent pas dans la seconde
BLes lignes de la seconde requête qui n'apparaissent pas dans la première
CLes lignes présentes dans les deux requêtes
DToutes les lignes des deux requêtes, sans doublons
7.Difficile
Une application exécute UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7 et signale un conflit si aucune ligne n'a été mise à jour. De quelle technique s'agit-il ?
ALe partitionnement (sharding) de la base de données
BLe verrouillage à deux phases strict avec des verrous de ligne
CLa journalisation anticipée (WAL)
DLe contrôle de concurrence optimiste
8.Difficile
La table b contient les valeurs 1, 2 et NULL dans la colonne y. Que renvoie SELECT * FROM a WHERE x NOT IN (SELECT y FROM b) ?
AUniquement les lignes de a où x est NULL
BToutes les lignes de a
CLes lignes de a où x ne vaut ni 1 ni 2
DAucune ligne
Corrigé
1. C · Une clé formée de deux colonnes ou plus
2. D · LIKE
3. C · Un tuple (n-uplet)
4. B · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
5. D · NULL
6. A · Les lignes de la première requête qui n'apparaissent pas dans la seconde
7. D · Le contrôle de concurrence optimiste
8. D · Aucune ligne
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.