Bonsoir François,

Envoyé par
fsmrel
De ton côté, comment vois-tu la suite des opérations ?

Les derniers exemples que nous avons pris offrent un panel assez complet des types de contraintes à traiter.
Pour être complet, pourrais-tu me donner ta vision pour le trigger qui bloque la suppression de la dernière ligne d'un devis (cf. pb cardinalité 1,N) ?
Par ailleurs, j'ai un autre petit cas à te soumettre pour le contrôle des cardinalités Max.
Imaginons une bibliothèque qui possède plusieurs exemplaires de plusieurs ouvrages mis à la disposition des étudiants.
Une version simple du MCD donne cela :

Que proposerais-tu (en PostgreSQL) pour contrôler :
- d'une part le fait qu'un étudiant ne peut pas emprunter plus de 10 ouvrages (sachant que, quand il ramène un ouvrage, on supprime le lien dans "Emprunt" sans garder l'historique),
- d'autre part, qu'un même ouvrage possède un nombre d'exemplaires limité.
J'imagine un CHECK qui renvoie à une fonction (cf. contrainte X pour l'héritage) ou un trigger INSTEAD OF INSERT...
Qu'en penses-tu ?
Partager