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 PostgreSQL et MySQL, quelle clause renvoie uniquement les 10 premières lignes d'un résultat ?
AMAX 10
BFIRST 10 ONLY
CLIMIT 10
DTOP ROWS 10
2.Facile
Que fait WHERE country IN ('NL', 'BE', 'DE') ?
AIl trie les lignes dans l'ordre de la liste
BIl conserve les lignes dont le pays n'est pas dans la liste
CIl conserve les lignes dont la valeur de country contient les trois codes à la fois
DIl conserve les lignes dont le pays est égal à l'une des valeurs de la liste
3.Facile
Qu'est-ce qu'une clé candidate ?
AUne colonne en attente de devenir une clé étrangère
BUn ensemble de colonnes partagé entre deux tables pour relier leurs lignes
CUn ensemble minimal de colonnes qui identifie de manière unique chaque ligne
DToute colonne contenant des valeurs NULL
4.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 ?
AL'arithmétique n'est pas autorisée dans la liste du SELECT
BLes alias ne peuvent pas contenir de tiret bas
CWHERE est évalué avant la liste du SELECT, donc l'alias n'existe pas encore
DWHERE ne peut comparer que des colonnes de texte
5.Moyen
Quelle propriété ACID signifie que des transactions concurrentes ne voient pas les modifications inachevées les unes des autres ?
AL'atomicité
BLa disponibilité
CLa durabilité
DL'isolation
6.Moyen
Une clé étrangère est déclarée avec ON DELETE CASCADE. Que se passe-t-il quand une ligne parente est supprimée ?
ALa ligne parente est copiée dans une table d'archive
BLes lignes enfants qui y font référence sont supprimées automatiquement
CLa clé étrangère des lignes enfants est mise à NULL automatiquement
DLa suppression est toujours refusée
7.Difficile
Pourquoi NATURAL JOIN est-il considéré comme risqué dans les requêtes de production ?
AIl joint sur toutes les colonnes de même nom, si bien qu'une nouvelle colonne peut modifier le résultat sans prévenir
BIl n'est pris en charge par aucune base de données
CIl ignore les clés primaires et étrangères et ne garde que les lignes NULL
DIl renvoie toujours un produit cartésien
8.Difficile
Deux médecins de garde vérifient chacun que l'autre est encore de garde, puis se désinscrivent tous les deux en même temps. Quelle anomalie l'isolation par instantané (snapshot isolation) peut-elle encore permettre ici ?
ALa lecture sale
BL'écriture sale
CLe write skew (écriture biaisée)
DLa lecture non reproductible au sein d'une transaction
Corrigé
1. C · LIMIT 10
2. D · Il conserve les lignes dont le pays est égal à l'une des valeurs de la liste
3. C · Un ensemble minimal de colonnes qui identifie de manière unique chaque ligne
4. C · WHERE est évalué avant la liste du SELECT, donc l'alias n'existe pas encore
5. D · L'isolation
6. B · Les lignes enfants qui y font référence sont supprimées automatiquement
7. A · Il joint sur toutes les colonnes de même nom, si bien qu'une nouvelle colonne peut modifier le résultat sans prévenir
8. C · Le write skew (écriture biaisée)
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.