Exercices : Conception d’une base de données

 

Exercices

1. Conception d’une base de données simple

Soit à créer une base de données : bibliothèque.

  • Identifier les entités principales (ex: Livre, Auteur; Étudiant, Cours; Article, Utilisateur)
  • Définir les attributs significatifs pour chaque entité (ex : titre, date, email, etc.)
  • Identifier les relations entre entités (1-n, n-n)
  • Dessiner un modèle Entité-Relation simplifié sur papier ou outil graphique

Explications :

  • L’entité Auteur a pour clé primaire id et attributs nom, email.
  • L’entité Livre a id comme clé primaire, et attributs titre, date_publication, nombre_pages.
  • La relation "écrit" est indiquée par la clé étrangère auteur_id dans Livre.
  • Cardinalité : un auteur écrit 0 à n livres, un livre est écrit par un seul auteur (cardinalité 1).

 


2. Création de la base de données

  • Créer une nouvelle base de données SQL avec un nom pertinent (ex: bibliotheque_db)
  • S'assurer que la base est créée sur le serveur MySQL via PhpMyAdmin

3. Création des tables SQL (CREATE TABLE)

  • Traduire le modèle conceptuel en tables relationnelles
  • Préciser pour chaque table :
    • Clé primaire (PRIMARY KEY)
    • Clés étrangères (FOREIGN KEY) pour les relations
    • Types de données adaptés (INT, VARCHAR, DATE, TEXT, etc.)
    • Contraintes NOT NULL, UNIQUE, DEFAULT

 4. Modifier la structure des tables (ALTER TABLE)

  • Ajouter une colonne à une table existante
  • Modifier le type d’une colonne
  • Supprimer une colonne
  • Exemple :


 

5. (Optionnel) Suppression de tables (DROP TABLE)

  • Comprendre l’impact de la suppression
  • Supprimer une table avec DROP TABLE en précisant la prudence nécessaire

TP 2 : Requêtes SQL de base (SELECT, INSERT, UPDATE, DELETE)

Exercices

1. Sélectionner des données (SELECT)

  • Récupérer toutes les lignes d’une table (ex: tous les livres)
  • Récupérer des colonnes spécifiques (ex: titre seulement)
  • Filtrer avec WHERE (ex: livres publiés après 2010)
  • Trier les résultats avec ORDER BY (ex: par date de publication)

Exemple :

 

 

2. Ajouter des données (INSERT INTO)

  • Insérer un ou plusieurs enregistrements dans une table
  • Insérer en spécifiant toutes les colonnes ou seulement certaines

Exemple :

3. Modifier des données (UPDATE)

  • Mettre à jour les valeurs d’une ou plusieurs colonnes pour des enregistrements ciblés

Exemple :


 

4. Supprimer des données (DELETE)

  • Supprimer une ou plusieurs lignes selon un critère précis

Example :

Exercices pratiques complémentaires

  • Trouver tous les auteurs avec une adresse e-mail non renseignée (NULL ou vide)
  • Ajouter une colonne "nombre_pages" dans la table Livre, remplir quelques valeurs, puis sélectionner les livres avec plus de 300 pages
  • Supprimer un auteur uniquement s’il n’a aucun livre associé (vérification préalable)

Réponses :

Voici les réponses aux trois demandes SQL avec requêtes adaptées :

  1. Trouver tous les auteurs avec une adresse e-mail non renseignée (NULL ou vide)
  2. Ajouter une colonne "nombre_pages" dans la table Livre, remplir quelques valeurs, puis sélectionner les livres avec plus de 300 pages
  3. Supprimer un auteur uniquement s’il n’a aucun livre associé

 

 

 

 

 

Enregistrer un commentaire

Plus récente Plus ancienne