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

Dans un motif LIKE, que représente le caractère générique _ (tiret bas) ?

  1. AUne lettre quelconque, mais pas un chiffre
  2. BZéro caractère ou plus
  3. CExactement un caractère
  4. DUn caractère espace
2.Facile

Que fait une contrainte CHECK ?

  1. AElle compte les lignes d'une table
  2. BElle vérifie si une table existe avant qu'une requête lui soit appliquée
  3. CElle rejette les lignes dont les valeurs ne satisfont pas une condition
  4. DElle vérifie le mot de passe de l'utilisateur
3.Facile

Qu'est-ce qu'une clé de substitution (surrogate key) ?

  1. AUn identifiant artificiel sans signification métier, comme un id auto-incrémenté
  2. BUne clé utilisée uniquement dans les vues
  3. CUne clé qui fait référence à une autre table
  4. DUne clé tirée de données réelles, comme une adresse e-mail
4.Moyen

Qu'est-ce qu'une injection SQL ?

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

Quelle affirmation sur HAVING est correcte ?

  1. AElle peut utiliser des fonctions d'agrégation pour filtrer les groupes
  2. BElle ne peut pas être utilisée avec GROUP BY
  3. CElle doit figurer avant WHERE dans l'instruction SELECT
  4. DElle trie les résultats
6.Moyen

Quelle requête renvoie le salaire le plus élevé de chaque service ?

  1. ASELECT dept, MAX(salary) FROM emp ORDER BY dept
  2. BSELECT MAX(dept), salary FROM emp GROUP BY salary
  3. CSELECT dept, salary FROM emp WHERE salary = MAX(salary)
  4. DSELECT dept, MAX(salary) FROM emp GROUP BY dept
7.Difficile

Le verrouillage à deux phases (2PL) garantit :

  1. AQue les transactions n'attendent jamais
  2. BQue les interblocages (deadlocks) ne peuvent jamais se produire
  3. CDes ordonnancements sérialisables par conflits
  4. DQu'aucun verrou n'est nécessaire
8.Difficile

Quel est le résultat de SELECT COUNT(col) FROM t si toutes les valeurs de col sont NULL et que la table contient 10 lignes ?

  1. AUne erreur
  2. B0
  3. C10
  4. DNULL

Corrigé

  1. 1. C · Exactement un caractère
  2. 2. C · Elle rejette les lignes dont les valeurs ne satisfont pas une condition
  3. 3. A · Un identifiant artificiel sans signification métier, comme un id auto-incrémenté
  4. 4. A · Une attaque dans laquelle une saisie utilisateur modifie la structure d'une requête SQL
  5. 5. A · Elle peut utiliser des fonctions d'agrégation pour filtrer les groupes
  6. 6. D · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  7. 7. C · Des ordonnancements sérialisables par conflits
  8. 8. B · 0

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