Activité Gestion des contraintes

Consigne

Avant de commencer, veuillez lire une première fois le document dans son ensemble.

Le travail est individuel. Vous pouvez communiquer en respectant le code d’honneur. Si vous être bloqué, demandez de l’aide afin de ne pas prendre trop de retard.

Situation

Vous travaillez sur la conception d’une base de données. Vous devez utiliser des contraintes de clé étrangère avec les clauses ON DELETE et ON UPDATE pour garantir l’intégrité référentielle.

Objectifs

À la fin de ce travail, vous devez :

  1. Être capable de réaliser les contraintes ON DELETE et ON UPDATE

Résultat attendu

Une mise à jour de votre résumé tenant, au maximum, sur une page A4 que vous devez déposer sur Moodle

Ressources

Mise en route

  • Connectez-vous au serveur de bases de données qui vous a été attribué au module 164.

  • Effectuez les tâches demandées les une après les autres.

À vous de jouer !

Exercices

Gestion de bibliothèque

Contexte

Vous travaillez sur la conception d’une base de données pour une application de gestion de bibliothèque. La base de données doit prendre en charge la relation entre les livres empruntés et les utilisateurs. Vous devez utiliser des contraintes de clé étrangère avec les clauses ON DELETE et ON UPDATE pour garantir l’intégrité référentielle.

On vous demande de

  • Créez les tables nécessaires pour stocker les informations sur les livres (Livres) et les utilisateurs (Utilisateurs). Assurez-vous d’inclure des contraintes de clé primaire appropriées pour chaque table.

  • Créez une table pour suivre les emprunts de livres (Emprunts). Cette table doit avoir des colonnes pour l’ID de l’emprunt, l’ID du livre emprunté, l’ID de l’utilisateur emprunteur et la date de l’emprunt.

  • Ajoutez des contraintes de clé étrangère à la table Emprunts pour garantir que les ID de livre et d’utilisateur font référence aux tables Livres et Utilisateurs respectivement.

  • Configurez les clauses ON DELETE et ON UPDATE appropriées pour les contraintes de clé étrangère dans la table Emprunts. Utilisez CASCADE pour les deux clauses.

  • Effectuez des opérations de test pour vérifier le comportement des contraintes de clé étrangère avec les clauses ON DELETE et ON UPDATE.

Gestion de projets

Contexte

Vous devez concevoir une base de données pour une société de gestion de projets. La base de données doit gérer les relations entre les projets et les employés affectés à ces projets.

On vous demande de

  • Créez les tables nécessaires pour stocker les informations sur les projets (Projets) et les employés (Employes). Assurez-vous d’inclure des contraintes de clé primaire appropriées pour chaque table.

  • Créez une table pour suivre l’affectation des employés aux projets (Affectations). Cette table doit avoir des colonnes pour l’ID de l’affectation, l’ID du projet, l’ID de l’employé, et la date de début de l’affectation.

  • Ajoutez des contraintes de clé étrangère à la table Affectations pour garantir que les ID de projet et d’employé font référence aux tables Projets et Employes respectivement.

  • Configurez les clauses ON DELETE et ON UPDATE appropriées pour les contraintes de clé étrangère dans la table Affectations. Utilisez CASCADE pour ON DELETE et RESTRICT pour ON UPDATE.

  • Effectuez des opérations de test pour vérifier le comportement des contraintes de clé étrangère avec les clauses ON DELETE et ON UPDATE.

Gestion de commandes

Contexte

Vous travaillez sur la conception d’une base de données pour une application de gestion de commandes. La base de données doit gérer les relations entre les commandes et les produits commandés.

On vous demande de

  • Créez les tables nécessaires pour stocker les informations sur les produits (Produits) et les clients (Clients). Assurez-vous d’inclure des contraintes de clé primaire appropriées pour chaque table.

  • Créez une table pour suivre les commandes (Commandes). Cette table doit avoir des colonnes pour l’ID de la commande, l’ID du client, et la date de la commande.

  • Créez une table pour les détails des commandes (Details_Commande). Cette table doit avoir des colonnes pour l’ID de la ligne de commande, l’ID de la commande, l’ID du produit, la quantité commandée et le prix unitaire.

  • Ajoutez des contraintes de clé étrangère à la table Details_Commande pour garantir que les ID de commande et de produit font référence aux tables Commandes et Produits respectivement.

  • Configurez les clauses ON DELETE et ON UPDATE appropriées pour les contraintes de clé étrangère dans la table Details_Commande. Utilisez CASCADE pour ON DELETE et NO ACTION pour ON UPDATE.

  • Effectuez des opérations de test pour vérifier le comportement des contraintes de clé étrangère avec les clauses ON DELETE et ON UPDATE.

Gestion des événements et des participants

Contexte

Vous devez concevoir une base de données pour une application de gestion d’événements. La base de données doit gérer les relations entre les événements et les participants inscrits à ces événements.

On vous demande de

  • Créez les tables nécessaires pour stocker les informations sur les événements (Evenements) et les participants (Participants). Assurez-vous d’inclure des contraintes de clé primaire appropriées pour chaque table.

  • Créez une table pour suivre les inscriptions des participants aux événements (Inscriptions). Cette table doit avoir des colonnes pour l’ID de l’inscription, l’ID de l’événement, l’ID du participant et la date de l’inscription.

  • Ajoutez des contraintes de clé étrangère à la table Inscriptions pour garantir que les ID d’événement et de participant font référence aux tables Evenements et Participants respectivement.

  • Configurez les clauses ON DELETE et ON UPDATE appropriées pour les contraintes de clé étrangère dans la table Inscriptions. Utilisez SET NULL pour ON DELETE et CASCADE pour ON UPDATE.

  • Effectuez des opérations de test pour vérifier le comportement des contraintes de clé étrangère avec les clauses ON DELETE et ON UPDATE.

Gestion des employés

Contexte

Vous travaillez sur la conception d’une base de données pour une entreprise. Vous devez garantir que les données des employés respectent certaines règles métiers.

On vous demande de

  • Créez une table pour stocker les informations sur les employés (Employes). Assurez-vous d’inclure des contraintes de clé primaire appropriées.

  • Ajoutez une contrainte CHECK pour garantir que l’âge des employés est supérieur ou égal à 18 ans.

  • Ajoutez une contrainte CHECK pour garantir que le salaire des employés est supérieur ou égal à 1500.

  • Insérez des exemples de données pour vérifier que les contraintes CHECK fonctionnent correctement.

Gestion des produits

Contexte

Vous travaillez sur la conception d’une base de données pour un magasin. Vous devez garantir que les données des produits respectent certaines règles métiers.

On vous demande de

  • Créez une table pour stocker les informations sur les produits (Produits). Assurez-vous d’inclure des contraintes de clé primaire appropriées.

  • Ajoutez une contrainte CHECK pour garantir que le prix unitaire des produits est supérieur à 0.

  • Ajoutez une contrainte CHECK pour garantir que le stock disponible des produits est supérieur ou égal à 0.

  • Insérez des exemples de données pour vérifier que les contraintes CHECK fonctionnent correctement.

Gestion des commandes

Contexte

Vous travaillez sur la conception d’une base de données pour une application de gestion de commandes. Vous devez garantir que les données des commandes respectent certaines règles métiers.

On vous demande de

  • Créez une table pour stocker les informations sur les commandes (Commandes). Assurez-vous d’inclure des contraintes de clé primaire appropriées.

  • Ajoutez une contrainte CHECK pour garantir que la date de la commande est antérieure ou égale à la date actuelle.

  • Ajoutez une contrainte CHECK pour garantir que le montant total de la commande est supérieur à 0.

  • Insérez des exemples de données pour vérifier que les contraintes CHECK fonctionnent correctement.