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

Quel mot-clé donne à une colonne ou à une table un autre nom temporaire dans une requête ?

  1. ARENAME
  2. BALIAS
  3. CAS
  4. DNAME
2.Facile

Que fait WHERE country IN ('NL', 'BE', 'DE') ?

  1. AIl trie les lignes dans l'ordre de la liste
  2. BIl conserve les lignes dont la valeur de country contient les trois codes à la fois
  3. CIl conserve les lignes dont le pays est égal à l'une des valeurs de la liste
  4. DIl conserve les lignes dont le pays n'est pas dans la liste
3.Facile

Un client peut passer de nombreuses commandes, mais chaque commande appartient à exactement un client. De quel type d'association s'agit-il ?

  1. AUn-à-plusieurs
  2. BZéro-à-zéro
  3. CUn-à-un
  4. DPlusieurs-à-plusieurs
4.Moyen

Que signifie le « A » de ACID ?

  1. AAvailability (disponibilité)
  2. BAccuracy (exactitude)
  3. CAtomicity (atomicité)
  4. DAggregation (agrégation)
5.Moyen

La troisième forme normale (3NF) élimine :

  1. ALes dépendances transitives entre attributs non clés
  2. BLes index redondants sur des colonnes qui ne font pas partie d'une clé
  3. CLes clés composées
  4. DLes valeurs atomiques
6.Moyen

Quelle requête liste les clients qui n'ont jamais passé de commande ?

  1. ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  2. BSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  3. CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
7.Difficile

Que renvoie un FULL OUTER JOIN ?

  1. AUniquement les lignes correspondantes
  2. BToutes les lignes des deux tables, appariées si possible et complétées par des NULL sinon
  3. CLe produit cartésien, qui associe chaque ligne d'une table à toutes les lignes de l'autre
  4. DUniquement les lignes sans correspondance
8.Difficile

Qu'est-ce qu'une lecture fantôme (phantom read) ?

  1. AUne requête qui ne renvoie aucune ligne
  2. BLa lecture de modifications non validées
  3. CLa lecture de données qui n'ont jamais été écrites
  4. DUne requête répétée renvoie de nouvelles lignes insérées par une autre transaction validée

Corrigé

  1. 1. C · AS
  2. 2. C · Il conserve les lignes dont le pays est égal à l'une des valeurs de la liste
  3. 3. A · Un-à-plusieurs
  4. 4. C · Atomicity (atomicité)
  5. 5. A · Les dépendances transitives entre attributs non clés
  6. 6. A · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  7. 7. B · Toutes les lignes des deux tables, appariées si possible et complétées par des NULL sinon
  8. 8. D · Une requête répétée renvoie de nouvelles lignes insérées par une autre transaction validée

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