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é candidate ?
AUn ensemble minimal de colonnes qui identifie de manière unique chaque ligne
BUn ensemble de colonnes partagé entre deux tables pour relier leurs lignes
CUne colonne en attente de devenir une clé étrangère
DToute colonne contenant des valeurs NULL
2.Facile
Que fait COMMIT dans une transaction ?
AIl rend permanentes toutes les modifications de la transaction
BIl annule toutes les modifications effectuées depuis le début de la transaction
CIl verrouille toute la base de données
DIl crée une nouvelle table
3.Facile
Quelle instruction SQL ajoute de nouvelles lignes à une table ?
AALTER
BINSERT
CSELECT
DUPDATE
4.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 ?
ALes lignes enfants qui y font référence sont supprimées automatiquement
BLa suppression est toujours refusée
CLa clé étrangère des lignes enfants est mise à NULL automatiquement
DLa ligne parente est copiée dans une table d'archive
5.Moyen
Quelle affirmation sur HAVING est correcte ?
AElle trie les résultats
BElle ne peut pas être utilisée avec GROUP BY
CElle peut utiliser des fonctions d'agrégation pour filtrer les groupes
DElle doit figurer avant WHERE dans l'instruction SELECT
6.Moyen
Une vue (view) en SQL est :
AUn type d'index
BUn écran du client de base de données pour parcourir les tables
CUne requête enregistrée qui se comporte comme une table virtuelle
DUne copie d'une table sur le disque
7.Difficile
La transaction T1 verrouille la ligne A et attend la ligne B, tandis que T2 verrouille la ligne B et attend la ligne A. Que fait un SGBD typique ?
AIl valide les deux transactions en même temps
BIl détecte l'interblocage et annule l'une des transactions, désignée comme victime
CIl fusionne les deux transactions en une seule
DIl laisse les deux transactions attendre jusqu'à ce que l'une d'elles se termine normalement par un COMMIT
8.Difficile
La table enrolment(student_id, course_id, student_name, grade) a pour clé (student_id, course_id). Quelle forme normale viole-t-elle ?
ALa deuxième forme normale, car student_name ne dépend que de student_id
BUniquement la troisième forme normale, car grade dépend de student_name
CLa première forme normale, car la colonne grade ne contient pas de valeurs atomiques
DAucune, elle est en BCNF
Corrigé
1. A · Un ensemble minimal de colonnes qui identifie de manière unique chaque ligne
2. A · Il rend permanentes toutes les modifications de la transaction
3. B · INSERT
4. A · Les lignes enfants qui y font référence sont supprimées automatiquement
5. C · Elle peut utiliser des fonctions d'agrégation pour filtrer les groupes
6. C · Une requête enregistrée qui se comporte comme une table virtuelle
7. B · Il détecte l'interblocage et annule l'une des transactions, désignée comme victime
8. A · La deuxième forme normale, car student_name ne dépend que de student_id
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.