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

Symfony PHP Discussion :

relation n:n ou 3 tables avec relations 0:n ? [1.x]


Sujet :

Symfony PHP

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 12
    Par défaut relation n:n ou 3 tables avec relations 0:n ?
    Bonjour,

    Tout d'abord, j'espère que je poste au bon endroit, puisque ma question touche beaucoup à Doctrine, mais pas uniquement.

    Je travaille sur une application qui permet de gérer
    - des clubs de sport,
    - des catégories d'équipes (D1, D2, etc.)
    - et une relation n:n entre les clubs et les catégories d'équipes, correspondant à peu près à des équipes, sachant qu'il peut y avoir plusieurs équipes par catégorie et pour un club.

    Pour l'exemple, les tables club et equipe sont composées de 2 champs id et name chacune, et la table equipe contient les champs club_id (clé primaire), categorie_id (clé primaire) et nombre (voir le modèle de données en pièce jointe).

    Voici le schema.yml correspondant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Club:
      columns:
        id:             { type: integer(4), unsigned: true, primary: true, autoincrement: true }
        name:           { type: string(100), notnull: true, unique: true }
     
    Categorie:
      columns:
        id:             { type: integer(4), unsigned: true, primary: true, autoincrement: true }
        name:           { type: string(100), notnull: true, unique: true }
      relations:
        Club:
          foreignAlias: Categories
          class: Club
          refClass: Equipe
     
    Equipe:
      actAs:
        Sluggable:
          fields:       [ club_id, categorie_id ]
      columns:
        club_id:        { type: integer(4), unsigned: true, primary: true }
        categorie_id:   { type: integer(4), unsigned: true, primary: true }
        nombre:         { type: integer(2), unsigned: true, default: 1 }
      relations:
        Club:
          foreignAlias: Equipes
        Categorie:
          foreignAlias: Equipes
    Ça fait quelques jours que je parcours les forums et la documentation de symfony pour comprendre comment valider le formulaire d'ajout d'équipes, et je suis tombé sur cette remarque de Michel Rotta sur les relations n:n avec doctrine :

    La table de jointure ne peut comporter que deux champs, le champs : idLiensnomenclature est en trop. La clefs unique doit être constituée par les deux champs de liaison (on ne peut avoir deux liaisons A1 vers B1... cette liaison doit être unique, d'où la clef).
    Donc dans mon cas, faut-il que je créée une table equipe avec son propre id et deux relations 0,n vers les tables club et categorie ?

    Un avis, un lien qui m'aurait échappé ?

    Merci !

    Eric
    Images attachées Images attachées  

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. formulaire sur tables avec relations
    Par cath2123 dans le forum IHM
    Réponses: 1
    Dernier message: 13/04/2009, 02h15
  2. [EJB3 Entity] Insérer 2 tables avec relation à partir d'un EJB
    Par Mister Nono dans le forum Java EE
    Réponses: 2
    Dernier message: 23/12/2008, 18h34
  3. [Requête] 2 tables avec relations un à plusieurs
    Par egg3774 dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 02/05/2007, 14h42
  4. [MySQL] mysql_fetch_assoc pour 2 tables avec relation 1-1
    Par jiojioforever dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/01/2007, 09h41
  5. Requête avec relation N-N (entre 3 tables)
    Par vynce dans le forum Langage SQL
    Réponses: 11
    Dernier message: 05/12/2005, 10h34

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