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
Des instructions comme CREATE, ALTER et DROP appartiennent à quelle partie de SQL ?
ALe langage de contrôle de données (DCL)
BLe langage de contrôle des transactions (TCL)
CLe langage de manipulation de données (DML)
DLe langage de définition de données (DDL)
2.Facile
Dans le modèle relationnel, comment appelle-t-on une ligne d'une table ?
AUn attribut
BUn domaine
CUn schéma
DUn tuple (n-uplet)
3.Facile
Quel mot-clé trie le résultat d'une requête ?
AORDER BY
BARRANGE
CGROUP BY
DSORT
4.Moyen
Qu'est-ce qu'une injection SQL ?
AUne attaque dans laquelle une saisie utilisateur modifie la structure d'une requête SQL
BUne technique de sauvegarde de base de données
CUne technique pour insérer rapidement de nombreuses lignes avec une seule instruction INSERT
DUn moyen d'ajouter des index
5.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
CUne requête qu'un utilisateur lance à la main
DUn type d'index qui accélère les recherches
6.Moyen
Que signifie le « A » de ACID ?
AAccuracy (exactitude)
BAtomicity (atomicité)
CAggregation (agrégation)
DAvailability (disponibilité)
7.Difficile
Après customers LEFT JOIN orders, pourquoi utiliser COUNT(o.id) plutôt que COUNT(*) pour compter les commandes par client ?
ACOUNT(*) n'est pas autorisé après une jointure
BCOUNT(*) compte pour 1 la ligne remplie de NULL des clients sans commande
CCOUNT(o.id) ne compte que les clients distincts
DCOUNT(*) ignore les lignes contenant des valeurs NULL
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) ?
AToutes les lignes de a
BAucune ligne
CLes lignes de a où x ne vaut ni 1 ni 2
DUniquement les lignes de a où x est NULL
Corrigé
1. D · Le langage de définition de données (DDL)
2. D · Un tuple (n-uplet)
3. A · ORDER BY
4. A · Une attaque dans laquelle une saisie utilisateur modifie la structure d'une requête SQL
5. A · Du code exécuté automatiquement lorsqu'un événement précis, comme INSERT, UPDATE ou DELETE, se produit sur une table
6. B · Atomicity (atomicité)
7. B · COUNT(*) compte pour 1 la ligne remplie de NULL des clients sans commande
8. B · Aucune ligne
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.