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
Que fait une contrainte CHECK ?
AElle vérifie si une table existe avant qu'une requête lui soit appliquée
BElle vérifie le mot de passe de l'utilisateur
CElle rejette les lignes dont les valeurs ne satisfont pas une condition
DElle compte les lignes d'une table
2.Facile
Qu'est-ce qu'une clé primaire (primary key) ?
AUne colonne ou un ensemble de colonnes qui identifie de manière unique chaque ligne
BUne colonne qui peut contenir des doublons mais ne doit jamais contenir NULL
CLa première colonne de chaque table
DUn mot de passe pour la base de données
3.Facile
Dans un motif LIKE, que représente le caractère générique % ?
AExactement un caractère à cette position de la chaîne
BLa fin de la chaîne
CToute suite de zéro caractère ou plus
DUn chiffre quelconque
4.Moyen
Que fait GRANT SELECT ON employees TO alice ?
AIl copie la table employees pour alice
BIl autorise alice à modifier et à supprimer des lignes de la table employees
CIl fait d'alice la propriétaire de la base de données
DIl autorise l'utilisatrice alice à lire la table employees
5.Moyen
La première forme normale (1NF) exige que :
AChaque colonne non clé dépende de toute la clé et de rien d'autre que la clé
BChaque colonne contienne des valeurs atomiques et qu'il n'y ait pas de groupes répétitifs
CIl n'y ait pas de clés étrangères
DChaque table ait exactement une colonne
6.Moyen
Qu'apporte une expression de table commune (WITH name AS (...)) ?
AUne table permanente qui reste stockée sur disque jusqu'à sa suppression
BUn résultat temporaire nommé, utilisable au sein d'une seule instruction
CUn nouvel utilisateur de la base de données
DUn index sur une colonne
7.Difficile
La table employee(emp_id, dept_id, dept_name) a pour clé emp_id, et dept_id → dept_name. Quelle affirmation est correcte ?
AElle est en BCNF et donc en 3NF
BElle n'est pas en 1NF
CElle est en 2NF mais pas en 3NF
DElle n'est pas en 2NF
8.Difficile
Pourquoi SELECT dept, name, COUNT(*) FROM emp GROUP BY dept est-il invalide en SQL standard ?
AGROUP BY doit lister toutes les colonnes de la table
BCOUNT(*) ne peut pas être utilisé avec GROUP BY
Cdept doit figurer dans une fonction d'agrégation
Dname n'est ni regroupé ni agrégé, il n'a donc pas une valeur unique par groupe
Corrigé
1. C · Elle rejette les lignes dont les valeurs ne satisfont pas une condition
2. A · Une colonne ou un ensemble de colonnes qui identifie de manière unique chaque ligne
3. C · Toute suite de zéro caractère ou plus
4. D · Il autorise l'utilisatrice alice à lire la table employees
5. B · Chaque colonne contienne des valeurs atomiques et qu'il n'y ait pas de groupes répétitifs
6. B · Un résultat temporaire nommé, utilisable au sein d'une seule instruction
7. C · Elle est en 2NF mais pas en 3NF
8. D · name n'est ni regroupé ni agrégé, il n'a donc pas une valeur unique par groupe
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.