IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Décisions SGBD Discussion :

Base de données activités clients


Sujet :

Décisions SGBD

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 6
    Points
    6
    Par défaut Base de données activités clients
    bonjour a tous,
    Je souhaiterai créer une base de données répondant a ceci:

    Gérer une société de la loisir, vous devez donc être capable de répertorier les participants aux différentes activités que votre société propose. Certaines personnes sont inscrites comme clients VIP et on accès a des sortie que les autres ne peuvent pas faire.
    Les sorties proposée s doivent pouvoir être distinguée par catégorie de loisir (sport, cinéma, et..) et vous devez pouvoir a tout moment savoir qui participe a quelle sortie.
    Ces animation sont toujours encadrées par AU MOINS un membre de votre association.

    Etant novice en la matière, j'aimerai avoir vos conseil et vos lumières afin que ma BDD est (la meilleur) structure possible .

    Je pensait faire une table Activités, une table Catégorie, une table Client, une table Encadrant et une table Privilège
    (voir pièce jointe)
    http://hpics.li/574db09

    merci d'avance

  2. #2
    Membre éprouvé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2009
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2009
    Messages : 552
    Points : 1 060
    Points
    1 060
    Par défaut
    Bonjour,

    Au lieu de deux tables "encadrant"/"client", je ferais plutôt une table "personne" (ou "utilisateur" s'ils peuvent se connecter à l'outil) avec un attribut "type" (énuméré à valeur dans 'encadrant' et 'client').

    Pourquoi? C'est plus simple d'ajouter un nouveau type de personne par la suite que si tu manipules plusieurs tables.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    merci de a réponse,

    concernant le privilège ?
    dois je mettre un attribut privilège dans la table personne ?

    J'aimerai plus de précision, et savoir comment cela va être traduit : Ces animation sont toujours encadrées par AU MOINS un membre de votre association.
    merci

    edit :
    est-ce envisageable de créer une autre table "type_personne" (dont il n'y aurait que 3 possibilité : encadrant, client et client VIP) ?

  4. #4
    Membre éprouvé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2009
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2009
    Messages : 552
    Points : 1 060
    Points
    1 060
    Par défaut
    Citation Envoyé par equinox08 Voir le message
    concernant le privilège ?
    dois je mettre un attribut privilège dans la table personne ?
    C'est plus simple à mon goût oui (voir la notion d’énuméré en UML).

    Citation Envoyé par equinox08 Voir le message
    J'aimerai plus de précision, et savoir comment cela va être traduit : Ces animation sont toujours encadrées par AU MOINS un membre de votre association.
    C'est une contrainte de cardinalité sur le lien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Animation[*] -- encadrants[1..*] Personne

  5. #5
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonsoir,


    Vous pouvez vous inspirer tout ou partie du diagramme ci-dessous, dans lequel les concepts sont « dépliés » (détaillés) :




    La table CLIENT représente les personnes clientes.


    La table CLIENT_VIP représente les VIP : elle est une spécialisation de la table CLIENT (voyez l’article MySQL Workbench qui traite de ce sujet). Notez les cardinalités de l’association :

    Un client peut être un client VIP et un client VIP est exactement un client.

    De même :

    Un client peut être un client non VIP et un client non VIP est exactement un client.


    Table ACTIVITE_CLIENT_VIP :

    Un client VIP peut participer à plusieurs activités quelles qu’elles soient et à une activité quelle qu’elle soit peuvent participer plusieurs clients VIP.


    Table ACTIVITE_NON_VIP :

    Une activité peut être une activité non VIP et une activité non VIP est exactement une activité.


    Table ACTIVITE_CLIENT_NON_VIP :

    Un client non VIP peut participer à plusieurs activités non VIP et à une activité non VIP peuvent participer plusieurs clients non VIP.


    Table ENCADREMENT :

    Un encadrant peut encadrer plusieurs activités et une activité est encadrée par au moins un encadrant.


    A noter qu'au stade SQL, un trigger sera à mettre en oeuvre pour s'assurer qu'une personne ne soit pas en même temps VIP et non VIP.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

Discussions similaires

  1. Réponses: 27
    Dernier message: 02/08/2013, 09h47
  2. Réponses: 2
    Dernier message: 24/09/2012, 11h56
  3. MVC, base de données et client lourd
    Par vravier dans le forum MVC
    Réponses: 3
    Dernier message: 05/06/2012, 14h49
  4. Déclencher un événement de modification de base de données au client web
    Par Akhdar dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 07/06/2011, 18h37
  5. [XL-2007] connexion base de donnée en client
    Par raph-68i dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/05/2010, 16h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo