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

Une clé étrangère (foreign key) est :

  1. AUne colonne dont les valeurs doivent être uniques sur toutes les lignes de la table
  2. BUne colonne qui fait référence à la clé primaire d'une autre table
  3. CUne clé utilisée par des utilisateurs étrangers
  4. DUne clé toujours chiffrée
2.Facile

Que garantit une contrainte UNIQUE sur une colonne ?

  1. ALa colonne ne peut plus être modifiée après l'insertion
  2. BDeux lignes ne peuvent pas avoir la même valeur non NULL dans cette colonne
  3. CLa colonne devient automatiquement la clé primaire de la table
  4. DLes valeurs de la colonne sont triées
3.Facile

Quelle instruction SQL ajoute de nouvelles lignes à une table ?

  1. AINSERT
  2. BUPDATE
  3. CALTER
  4. DSELECT
4.Moyen

Quelle requête renvoie le nombre de villes différentes dans la table customers ?

  1. ASELECT COUNT(city) FROM customers GROUP BY city
  2. BSELECT DISTINCT COUNT(city) FROM customers
  3. CSELECT COUNT(DISTINCT city) FROM customers
  4. DSELECT SUM(DISTINCT city) FROM customers
5.Moyen

Qu'est-ce qu'une injection SQL ?

  1. AUne technique de sauvegarde de base de données
  2. BUne technique pour insérer rapidement de nombreuses lignes avec une seule instruction INSERT
  3. CUn moyen d'ajouter des index
  4. DUne attaque dans laquelle une saisie utilisateur modifie la structure d'une requête SQL
6.Moyen

Une table contient des lignes où col est NULL. Quelles lignes WHERE col = NULL renvoie-t-il ?

  1. AAucune ligne, car la comparaison est inconnue
  2. BUne erreur dans toutes les bases de données
  3. CUniquement les lignes où col est NULL, comme avec IS NULL
  4. DToutes les lignes de la table
7.Difficile

Quelle fonctionnalité SQL convient le mieux pour trouver tous les employés sous un responsable dans un organigramme de profondeur inconnue ?

  1. AUne contrainte UNIQUE sur manager_id
  2. BUne expression de table commune récursive (WITH RECURSIVE)
  3. CUne seule auto-jointure de la table employees sur manager_id
  4. DUn GROUP BY sur manager_id
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 détecte l'interblocage et annule l'une des transactions, désignée comme victime
  2. BIl valide les deux transactions en même temps
  3. CIl laisse les deux transactions attendre jusqu'à ce que l'une d'elles se termine normalement par un COMMIT
  4. DIl fusionne les deux transactions en une seule

Corrigé

  1. 1. B · Une colonne qui fait référence à la clé primaire d'une autre table
  2. 2. B · Deux lignes ne peuvent pas avoir la même valeur non NULL dans cette colonne
  3. 3. A · INSERT
  4. 4. C · SELECT COUNT(DISTINCT city) FROM customers
  5. 5. D · Une attaque dans laquelle une saisie utilisateur modifie la structure d'une requête SQL
  6. 6. A · Aucune ligne, car la comparaison est inconnue
  7. 7. B · Une expression de table commune récursive (WITH RECURSIVE)
  8. 8. A · 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.