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
Quelle instruction ajoute une nouvelle colonne à une table existante ?
AINSERT COLUMN
BALTER TABLE
CUPDATE TABLE
DCREATE COLUMN
2.Facile
Quelles lignes WHERE price BETWEEN 10 AND 20 sélectionne-t-il ?
ALes lignes dont le prix est en dehors de l'intervalle de 10 à 20
BLes lignes dont le prix va de 10 à 20, bornes 10 et 20 incluses
CLes lignes dont le prix est supérieur à 10 et inférieur à 20, 10 et 20 exclus
DUniquement les lignes dont le prix est égal à 10 ou à 20
3.Facile
Qu'est-ce qu'une clé de substitution (surrogate key) ?
AUne clé tirée de données réelles, comme une adresse e-mail
BUn identifiant artificiel sans signification métier, comme un id auto-incrémenté
CUne clé qui fait référence à une autre table
DUne clé utilisée uniquement dans les vues
4.Moyen
La table orders compte 5 lignes, chacune faisant référence à un client existant. La table customers compte 3 lignes. Combien de lignes un INNER JOIN sur customer_id renvoie-t-il ?
A8
B3
C15
D5
5.Moyen
En algèbre relationnelle, l'opérateur de projection (π) correspond :
AAu tri du résultat
BÀ la combinaison de deux tables sur une clé
CAu choix des lignes qui satisfont une condition donnée
DAu choix des colonnes qui apparaissent dans le résultat
6.Moyen
Que renvoie SELECT SUM(amount) FROM orders lorsque la clause WHERE ne correspond à aucune ligne ?
AUne erreur
B0
CNULL
DUne chaîne vide
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 laisse les deux transactions attendre jusqu'à ce que l'une d'elles se termine normalement par un COMMIT
BIl valide les deux transactions en même temps
CIl fusionne les deux transactions en une seule
DIl détecte l'interblocage et annule l'une des transactions, désignée comme victime
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
CAucune, elle est en BCNF
DLa première forme normale, car la colonne grade ne contient pas de valeurs atomiques
Corrigé
1. B · ALTER TABLE
2. B · Les lignes dont le prix va de 10 à 20, bornes 10 et 20 incluses
3. B · Un identifiant artificiel sans signification métier, comme un id auto-incrémenté
4. D · 5
5. D · Au choix des colonnes qui apparaissent dans le résultat
6. C · NULL
7. D · 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.