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 SQL ajoute de nouvelles lignes à une table ?
AALTER
BSELECT
CINSERT
DUPDATE
2.Facile
Des instructions comme CREATE, ALTER et DROP appartiennent à quelle partie de SQL ?
ALe langage de manipulation de données (DML)
BLe langage de contrôle des transactions (TCL)
CLe langage de contrôle de données (DCL)
DLe langage de définition de données (DDL)
3.Facile
Que renvoie un CROSS JOIN ?
AUniquement les lignes qui ne correspondent pas
BUniquement les lignes de la première table
CUniquement les lignes qui correspondent sur une colonne clé commune
DToutes les combinaisons de lignes des deux tables
4.Moyen
Des étudiants peuvent suivre plusieurs cours et chaque cours a plusieurs étudiants. Comment modélise-t-on cela en tables ?
AEn fusionnant étudiants et cours dans une seule table
BAvec une colonne de clé étrangère course_id dans la table des étudiants qui pointe vers les cours
CAvec une liste d'identifiants de cours stockée dans une seule colonne
DAvec une table d'association contenant des clés étrangères vers les étudiants et vers les cours
5.Moyen
Qu'est-ce qu'une lecture sale (dirty read) ?
ALa lecture de données écrites par une autre transaction qui n'a pas encore été validée
BLa lecture d'une même ligne deux fois avec la même valeur
CLa lecture de données sur un disque corrompu
DLa lecture de données sans clause WHERE
6.Moyen
Quelle propriété ACID signifie que des transactions concurrentes ne voient pas les modifications inachevées les unes des autres ?
AL'atomicité
BLa durabilité
CLa disponibilité
DL'isolation
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 2NF
CElle est en 2NF mais pas en 3NF
DElle n'est pas en 1NF
8.Difficile
La requête FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' élimine de façon inattendue les clients sans commande. Pourquoi ?
Astatus est un mot réservé
BLEFT JOIN ne conserve jamais les lignes sans correspondance
CLa condition WHERE sur o rejette les lignes remplies de NULL, ce qui en fait une jointure interne
DLa jointure devrait utiliser USING au lieu de ON
Corrigé
1. C · INSERT
2. D · Le langage de définition de données (DDL)
3. D · Toutes les combinaisons de lignes des deux tables
4. D · Avec une table d'association contenant des clés étrangères vers les étudiants et vers les cours
5. A · La lecture de données écrites par une autre transaction qui n'a pas encore été validée
6. D · L'isolation
7. C · Elle est en 2NF mais pas en 3NF
8. C · La condition WHERE sur o rejette les lignes remplies de NULL, ce qui en fait une jointure interne
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.