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é primaire (primary key) ?

  1. ALa première colonne de chaque table
  2. BUn mot de passe pour la base de données
  3. CUne colonne ou un ensemble de colonnes qui identifie de manière unique chaque ligne
  4. DUne colonne qui peut contenir des doublons mais ne doit jamais contenir NULL
2.Facile

Quelle instruction supprime une table entière, structure comprise ?

  1. ADROP TABLE
  2. BTRUNCATE ROWS
  3. CREMOVE TABLE
  4. DDELETE FROM
3.Facile

Comment trier un résultat du salaire le plus élevé au plus bas ?

  1. AORDER BY salary DESC
  2. BSORT salary DOWN
  3. CGROUP BY salary DESC
  4. DORDER BY salary ASC
4.Moyen

Une vue (view) en SQL est :

  1. AUn type d'index
  2. BUne copie d'une table sur le disque
  3. CUne requête enregistrée qui se comporte comme une table virtuelle
  4. DUn écran du client de base de données pour parcourir les tables
5.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 ?

  1. ALa suppression est toujours refusée
  2. BLa ligne parente est copiée dans une table d'archive
  3. CLa clé étrangère des lignes enfants est mise à NULL automatiquement
  4. DLes lignes enfants qui y font référence sont supprimées automatiquement
6.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 ?

  1. A15
  2. B3
  3. C5
  4. D8
7.Difficile

La table enrolment(student_id, course_id, student_name, grade) a pour clé (student_id, course_id). Quelle forme normale viole-t-elle ?

  1. ALa première forme normale, car la colonne grade ne contient pas de valeurs atomiques
  2. BAucune, elle est en BCNF
  3. CLa deuxième forme normale, car student_name ne dépend que de student_id
  4. DUniquement la troisième forme normale, car grade dépend de student_name
8.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 ?

  1. AIl valide les deux transactions en même temps
  2. BIl laisse les deux transactions attendre jusqu'à ce que l'une d'elles se termine normalement par un COMMIT
  3. CIl détecte l'interblocage et annule l'une des transactions, désignée comme victime
  4. DIl fusionne les deux transactions en une seule

Corrigé

  1. 1. C · Une colonne ou un ensemble de colonnes qui identifie de manière unique chaque ligne
  2. 2. A · DROP TABLE
  3. 3. A · ORDER BY salary DESC
  4. 4. C · Une requête enregistrée qui se comporte comme une table virtuelle
  5. 5. D · Les lignes enfants qui y font référence sont supprimées automatiquement
  6. 6. C · 5
  7. 7. C · La deuxième forme normale, car student_name ne dépend que de student_id
  8. 8. C · Il détecte l'interblocage et annule l'une des transactions, désignée comme victime

Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.