MCD

Brou87 Messages postés 14 Date d'inscription mardi 15 juin 2010 Statut Membre Dernière intervention 16 septembre 2014 - 10 juil. 2012 à 14:58
yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 - 13 juil. 2012 à 12:49
Salut amis du forum.
J'ai projet à mettre en place.
Voici mes entités et leurs champs:

CLIENTS(Num_cli, Nom_cli, Prenom_cli, Adresse_cli,Tel, Cel, Email)
SERVICES(Num_ser, Nom_ser, Description)
OFFRES_INTERNET(Code_int, debit, type_connexion)
OFFRES_WAN(Code_wan, site1, site2)
OFFRES_VOIP(Code_voip, nbre, nom)
OFFRES_IPTV(Code_iptv, nom, description)

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!!

1 réponse

yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 26
13 juil. 2012 à 12:49
Salut,

Une seule table suffirait pour :

OFFRES_INTERNET(Code_int, debit, type_connexion)
OFFRES_WAN(Code_wan, site1, site2)
OFFRES_VOIP(Code_voip, nbre, nom)
OFFRES_IPTV(Code_iptv, nom, description)

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...

bye...
0
Rejoignez-nous