Selon les règles de gestions un CLIENT peut s'abonner à un ou plusieurs SERVICE(s). De plus un SERVICE concerné à ses OFFRES qui lui sont propres. Je ne sais comment faire ses relations afin d'avoir une base de données efficace.
Aussi l'on voulait lister la liste de tous les services qui existent et connaitre les différentes offres et services aux quels un client s'est abonné.
Merci et cordialement votre!!
Cela donnera peut être quelques redondances mais sera plus simple à requéter :
OFFRES
(
codeOffre, -- PK
typeOffre, --[WAN | VOIP | IPTV] (ajouter une contrainte d'énumération)
debit,
type_connexion,
nom, -- null selon typeOffre
nbr, -- null selon typeOffre
site1, -- null selon typeOffre
site2, -- null selon typeOffre
description,
Num_ser -- ForeignKey sur la table SERVICES
)
il faut ensuite créer une table de lien entre CLIENTS et SERVICES
ABONNEMENT
(
num_client,
num_service -- ce qui donnes aussi les OFFRES rattachées au service
)
exemple,
crée le service 1
crée l'offre 1 lié au service 1
crée l'offre 2 lié au service 1
crée le service 2
crée l'offre 3 lié au service 2
Abonne le client 1 au service 1 et 2
insert into ABONNEMENT values(1, 1) -- client 1 aura offre 1 et 2
insert into ABONNEMENT values(1, 2) -- client 1 aura aussi l'offre 3
Abonne le client 2 au service 2
insert into ABONNEMENT values(2, 2) -- client 2 n'aura que l'offre 3
Ceci n'est qu'une piste, il y a mille façons de faire selon l'implémentation métier, tout dépend du SGBD, procédures stockées, triggers ect...