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

PHP & Base de données Discussion :

architecture complexe base MYSQL


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut architecture complexe base MYSQL
    bonjour,

    voila je n'arrive pas créer dans ma base phmyadmin l'architecure que m'on conseiller:

    Tables :
    membre -1,n----creer----(1,1)- creation_groupe -(1,1)----associer----0,n- groupe
    |-------------0,n----participer----0,n------------|

    Tables :
    membre (id_membre...)
    groupe (id_groupe...)
    creation_groupe (ref_membre, ref_groupe)
    participation_groupe (ref_membre, ref_groupe, ref_createur)

    Dans la dernière table, tu auras une clé étrangère qui référence la clé primaire de la table "creation_groupe", c'est à dire le couple {ref_membre, ref_groupe} de "creation_groupe".
    Et "ref_membre" de "participation_groupe" référence "id_membre" de la table "membre".

    voila ce que j'ai fait:
    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
    29
    CREATE TABLE `groupe_membre` (
      `ref_membre` int(11) unsigned NOT NULL,
      `ref_groupe` int(11) NOT NULL,
      `ref_createur` int(11) unsigned NOT NULL,
      PRIMARY KEY  (`ref_membre`,`ref_groupe`),
      KEY `ref_membre` (`ref_membre`),
      KEY `ref_groupe` (`ref_groupe`),
      KEY `ref_createur` (`ref_createur`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
     
    -- 
    -- Contenu de la table `groupe_membre`
    -- 
     
    INSERT INTO `groupe_membre` VALUES (1, 3, 1);
    INSERT INTO `groupe_membre` VALUES (1, 109, 1);
    INSERT INTO `groupe_membre` VALUES (1, 114, 1);
    INSERT INTO `groupe_membre` VALUES (2, 105, 1);
    INSERT INTO `groupe_membre` VALUES (2, 111, 1);
    INSERT INTO `groupe_membre` VALUES (2, 120, 1);
    INSERT INTO `groupe_membre` VALUES (2, 122, 1);
    INSERT INTO `groupe_membre` VALUES (6, 1, 1);
     
     
    -- 
    ALTER TABLE `groupe_membre`
      ADD CONSTRAINT `groupe_membre_ibfk_2` FOREIGN KEY (`ref_groupe`) REFERENCES `associer_groupe` (`ref_groupe`) ON DELETE CASCADE ON UPDATE CASCADE,
      ADD CONSTRAINT `groupe_membre_ibfk_4` FOREIGN KEY (`ref_membre`) REFERENCES `membre_ovip` (`id_membre`) ON DELETE CASCADE ON UPDATE CASCADE,
      ADD CONSTRAINT `groupe_membre_ibfk_5` FOREIGN KEY (`ref_createur`) REFERENCES `associer_groupe` (`ref_membre`) ON DELETE CASCADE ON UPDATE CASCADE;
    mais je pense avoir fait une erreur, pouvez vous m'aider?
    MERCI

  2. #2
    Membre habitué Avatar de rinuom99
    Étudiant
    Inscrit en
    Août 2007
    Messages
    260
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 260
    Points : 171
    Points
    171
    Par défaut
    si tu donnes le message d'erreur t'auras plus de chance d'avoir une réponse satisfaisante
    Si tu peux voir détruit l'ouvrage de ta vie.
    Et sans dire un seul mot te mettre à rebâtir,
    Tu seras un Homme, mon fils.

  3. #3
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    voila j'ai créer une table mais j'ai cette erreur:
    Uncaught exception 'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '110-105' for key 1.

    mais je pense que ce la configuration de ma base groupe_membre qui en faite nommer participation membre dans les explications qui n'est pas bonne.

    merci.

  4. #4
    Membre habitué Avatar de rinuom99
    Étudiant
    Inscrit en
    Août 2007
    Messages
    260
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 260
    Points : 171
    Points
    171
    Par défaut
    au niveau de la création de ta table groupe_membre tu as déclaré ref_membre comme clé primaire donc tu peux pas attribuer la valeur "1" a plusieurs enregistrements au même temps

    INSERT INTO `groupe_membre` VALUES (1, 3, 1);
    INSERT INTO `groupe_membre` VALUES (1, 109, 1);
    INSERT INTO `groupe_membre` VALUES (1, 114, 1);
    Si tu peux voir détruit l'ouvrage de ta vie.
    Et sans dire un seul mot te mettre à rebâtir,
    Tu seras un Homme, mon fils.

  5. #5
    Membre habitué
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Points : 149
    Points
    149
    Par défaut
    comment je doit faire la structure de la table a ton avis avec les instructions qu'on m'avait donner et que j'ai noter plus haut?
    MERCI.

  6. #6
    Membre averti Avatar de bourvil
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : Israël

    Informations forums :
    Inscription : Juin 2002
    Messages : 411
    Points : 329
    Points
    329
    Par défaut
    Citation Envoyé par rinuom99 Voir le message
    au niveau de la création de ta table groupe_membre tu as déclaré ref_membre comme clé primaire donc tu peux pas attribuer la valeur "1" a plusieurs enregistrements au même temps
    Non, il/elle a declare ref_membre etref_groupe comme clef primaire
    PRIMARY KEY (`ref_membre`,`ref_groupe`),
    donc le probleme ne vient pas de la.

    ou apparait le pb? apres le insert? ou apres alter table?
    et les autres tables/ comment les cree tu?
    Franchement, je suis capable du meilleur comme du pire, mais, dans le pire, c'est moi le meilleur.
    Coluche

Discussions similaires

  1. Hébergeurs de bases MySQL
    Par Polluxlecastor dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 05/04/2004, 22h57
  2. Contenu DataSource.xml avec base Mysql
    Par PrinceMaster77 dans le forum XMLRAD
    Réponses: 3
    Dernier message: 11/03/2004, 12h59
  3. Réponses: 3
    Dernier message: 12/11/2003, 00h34
  4. recréer une base mysql
    Par ryan dans le forum Administration
    Réponses: 2
    Dernier message: 27/06/2003, 23h04
  5. [Dev-C++] Accès à une base MySQL
    Par Beetlejuice dans le forum Dev-C++
    Réponses: 8
    Dernier message: 08/05/2003, 13h17

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