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

Schéma Discussion :

Id dans une association


Sujet :

Schéma

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 58
    Points : 27
    Points
    27
    Par défaut Id dans une association
    Bonjour,

    Je voudrais savoir si il est possible (et conseillé) de mettre un ID auto_increment dans une association entre deux tables car je cherche a inserer des données mais voila les attributs de mon association ne me permettent pas de définir uniquement cette association car ca peut-être identique.

    Cas n°1:
    Journee = (DateJ)
    Vendeuse = (CodeVendeuse)
    Polluer (DateJ, CodeVendeuse, TypePol, CA_Pol, NbTicketPol, NbArticlePol)

    Dans ce cas la je peux avoir DateJ et un Codevendeuse identique mais avec TypePol, CA_Pol, NbTicketPol et NbArticlePol différents
    Cependant je peux avoir pour une meme date et une meme vendeuse plusieurs tickets polluant donc impossible d'inserer les données

    Exemple :
    13/04/2013 | A258 | Retour | 15 | 1 | -1
    13/04/2013 | A258 | Echange |25 |1 | -1

    Cas n°2:
    Journee2 = (DateJ2)
    TicketPolluant = (IdPolluant, TypePol2, CA_Pol2, NbTicketPol2, NbArticlePol2)
    Affecter = (CodeVendeuse2, IdPolluant)
    Associer = (IdPolluant, DateJ2)

    Dans ce cas ci j'ai inséré TypePol2, CA_Pol2, NbTicketPol2, NbArticlePol2 dans la table TicketPolluant avec un distinct pour ne garder aucun doublons
    Puis j'ai fais une jointure pour Associer sans problème mais pour affecter je n'y arrive pas car problème de primary key

    Exemple :
    10/04/2013 | A258 | Retour | 15 | 1 | -1
    10/04/2013 | A258 | Retour | 15 | 1 | -1

    Le mieux aurait été d'avoir une heure pour un ticket polluant afin de le rendre unique mais je ne peux l'avoir, c'est pourquoi je voudrais savoir s'il est possible dans le cas N°1 d'insérer un ID dans l'association polluer et si c'est conseillé pour la suite lors de la saisie de ces nombres a travers une interface ?

    Cdt,
    Images attachées Images attachées   

  2. #2
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    7 945
    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 : 7 945
    Points : 30 716
    Points
    30 716
    Billets dans le blog
    16
    Par défaut
    Bonjour axe31,

    Vous êtes en train de coller une rustine au hasard sur un pneu sans voir où est le clou.

    Il faudrait que présentiez l’aspect fonctionnel des choses, c'est-à-dire les règles de gestion des données pour qu’on puisse vous aider. Il n’est pas normal que nous cherchions à intuiter ces règles à partir du nom (le plus souvent trompeur) des noms des attributs...

    Cela dit, on suppose que NbTicketPol représente un nombre de tickets polluants (qu’est-ce que signifie « polluant » ici ? on fait dans le diésel ?) traité par une vendeuse un jour donné.

    Question : Peut-on affirmer que pour une vendeuse donnée V, un jour donné J et un type de pollution donné T, le nombre Nt de tickets polluants est unique ?

    Même chose pour le chiffre d’affaire CA ? Le Nombre Na d’articles polluants ?

    Quelles sont les relations entre Nt, CA et Na ? Bref, quelles sont les règles de gestion ! Illustrez avec un maximum d’exemples. Ensuite on pourra résoudre le problème non pas au pif avec une solution (?) du genre IdPolluant qui revient a priori à cacher la poussière sous le tapis, mais rationnellement.


    N.B. Pour plus de lisibilité, n'hésitez pas à utiliser la balise [code] ou plutôt la balise [pre], exemple :

    DateJ         CodeVendeuse     TypePol     CA_Pol       NbTicketPol    NbArticlePol
    13/04/2013    A258             Retour          15                1               -1
    13/04/2013    A258             Echange         25                1               -1
    
    (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. Conflit dans une association : design / dev
    Par Screwdriver dans le forum Droit
    Réponses: 1
    Dernier message: 11/08/2012, 10h20
  2. Supprimer dans une association ManyToMany
    Par CinePhil dans le forum Hibernate
    Réponses: 14
    Dernier message: 23/12/2010, 18h33
  3. [MCD] Quand mettre un attribut dans une association ?
    Par Jimalexp dans le forum Schéma
    Réponses: 1
    Dernier message: 17/02/2009, 12h41
  4. [MCD] activités dans une association
    Par gfvsdtut dans le forum Schéma
    Réponses: 6
    Dernier message: 21/08/2008, 15h50
  5. forme juridique pour des prestations dans une association
    Par guigui5931 dans le forum Association
    Réponses: 8
    Dernier message: 15/07/2006, 16h46

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