Du producteur au consommateur

[30 min]

Soit le modèle relationnel suivant :

CTRL+C pour copier, CTRL+V pour coller
1
Producteur(#raison_sociale:chaîne(25), ville:chaîne(255))
2
Consommateur(#login:chaîne(10), #email:chaîne(50), nom:chaîne(50),prenom:chaîne(50), ville:chaîne(255))
3
Produit(#id:entier, description:chaîne(100), produit-par=>Producteur, consomme-par-login=>Consommateur, consomme-par-email=>Consommateur)
Producteur(#raison_sociale:chaîne(25), ville:chaîne(255))
Consommateur(#login:chaîne(10), #email:chaîne(50), nom:chaîne(50),prenom:chaîne(50), ville:chaîne(255))
Produit(#id:entier, description:chaîne(100), produit-par=>Producteur, consomme-par-login=>Consommateur, consomme-par-email=>Consommateur)

On ajoute que :

  • (nom,prenom,ville) est une clé candidate de Consommateur

  • Tous les produits sont produits

  • Tous les produits ne sont pas consommés

Question

Rétro-concevez le modèle conceptuel sous-jacent à ce modèle relationnel.

Solution

Question

Établissez le code LDD standard permettant d'implémenter ce modèle en SQL.

Solution

Question

Insérez les données dans votre base de données correspondant aux assertions suivantes :

  • L'entreprise de Compiègne "Pommes Picardes SARL" a produit 4 lots de pommes, et 2 lots de cidre.

  • Il existe trois utilisateurs consommateurs dans la base, donc les adresses mails sont :

    Al.Un@compiegne.fr - Bob.Deux@compiegne.fr - Charlie.Trois@compiegne.fr

    Ce sont des employés de la ville de Compiègne qui habitent cette ville. Leur mail est construit sur le modèle Prenom.Nom@compiegne.fr. Leur login est leur prénom.

Solution

Question

Modifiez les données de votre base de données pour intégrer les assertions suivantes :

  • 1 lots de pommes a été consommés par Al Un.

  • 2 lots de pomme ont été consommé par Bob Deux.

  • Tous les lots de cidre ont été consommés par Al Un.

Solution

Question

Charlie Trois n'ayant rien consommé, modifiez votre base de données afin de le supprimer de la base.

Solution