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é de substitution (surrogate key) ?
AUne clé utilisée uniquement dans les vues
BUne clé tirée de données réelles, comme une adresse e-mail
CUne clé qui fait référence à une autre table
DUn identifiant artificiel sans signification métier, comme un id auto-incrémenté
2.Facile
Quelle instruction ajoute une nouvelle colonne à une table existante ?
AINSERT COLUMN
BUPDATE TABLE
CCREATE COLUMN
DALTER TABLE
3.Facile
Quelle fonction d'agrégation renvoie la moyenne d'une colonne numérique ?
ASUM
BMEDIAN
CAVG
DMEAN
4.Moyen
Une vue (view) en SQL est :
AUn écran du client de base de données pour parcourir les tables
BUn type d'index
CUne requête enregistrée qui se comporte comme une table virtuelle
DUne copie d'une table sur le disque
5.Moyen
Que renvoie EXCEPT (appelé MINUS dans Oracle) ?
ALes lignes de la seconde requête qui n'apparaissent pas dans la première
BLes lignes présentes dans les deux requêtes
CToutes les lignes des deux requêtes, sans doublons
DLes lignes de la première requête qui n'apparaissent pas dans la seconde
6.Moyen
Que renvoie SELECT COALESCE(phone, 'unknown') FROM customers pour un client dont le téléphone est NULL ?
AUne erreur
BNULL
CUne chaîne vide
D'unknown'
7.Difficile
Pour une équijointure entre deux grandes tables sans index utile, quel algorithme de jointure un optimiseur choisit-il souvent ?
ALa jointure par hachage (hash join)
BLa jointure par boucles imbriquées avec accès par index
CLa jointure bitmap sur la clé primaire
DLa jointure croisée
8.Difficile
Que montre EXPLAIN (ou EXPLAIN ANALYZE dans PostgreSQL) pour une requête ?
ALa signification de chaque mot-clé SQL de la requête
BLa liste des utilisateurs qui ont exécuté la requête
CLe plan d'exécution choisi par l'optimiseur, comme les parcours et les méthodes de jointure
DUniquement une réécriture de la requête en notation d'algèbre relationnelle
Corrigé
1. D · Un identifiant artificiel sans signification métier, comme un id auto-incrémenté
2. D · ALTER TABLE
3. C · AVG
4. C · Une requête enregistrée qui se comporte comme une table virtuelle
5. D · Les lignes de la première requête qui n'apparaissent pas dans la seconde
6. D · 'unknown'
7. A · La jointure par hachage (hash join)
8. C · Le plan d'exécution choisi par l'optimiseur, comme les parcours et les méthodes de jointure
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.