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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Liaison de table


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Developpeur
    Inscrit en
    Novembre 2011
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 196
    Par défaut Liaison de table
    Bonjour à tous,

    J'ai vraiment besoin d'aide, j'ai cherché mais pas trouvé.
    Pour être le plus clair possible :
    J'ai une table client (ID, Nom, Ville)
    J'ai une table ville (liste des villes)
    Je souhaiterais créer une liste déroulante dans ma table client avec en lien la table ville (pour le champ ville de la table client)
    Je traite uniquement sur Phymyadmin.
    J'ai essayé les ENUM et SET mais rien à faire.

    Pouvez vous m'aider ?

    Merci par avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il faut que tes tables soient Innodb, que tu aies une relation entre les deux clefs et que tu indiques la "colonne descriptive" dans la vue relationelle de ta table de réference.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Homme Profil pro
    Developpeur
    Inscrit en
    Novembre 2011
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 196
    Par défaut Re
    Bonjour et merci pour ta réponse.

    Au moins je suis fixé, cela est possible.

    Je vais essayé de trouvé la solution et la manip, dans le cas contraire je me permettrai de revenir.

    Merci encore

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    La manipulation je te l'ai indiquée donc ça ne devrait pas être trop difficile à trouver
    De manière plus détaillée :
    - pour chaque table, dans l'onglet "opération" verifier que le moteur de stockage est "Innodb"
    - dans la table contenant la clef étrangère, onglet "structure"
    - dans le menu "index", ajouter un index de type "index" sur la clef étrangère
    - dans le menu "vue relationnelle", renseigner la colonne de la table de réference en "Contrainte de clé étrangère" pour la colonne de la table
    - dans la table de référence, onglet "Structure", menu "vue relationnelle", indiquer la colonne qui doit apparaitre dans la liste de choix dans "Colonne descriptive"
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Homme Profil pro
    Developpeur
    Inscrit en
    Novembre 2011
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 196
    Par défaut re
    Merci pour tes explication.
    J'ai passé toutes mes tables en "Innodb" et créer un index
    il me reste ces deux étapes sur lesquelles je bataille :

    - dans le menu "vue relationnelle", renseigner la colonne de la table de réference en "Contrainte de clé étrangère" pour la colonne de la table
    - dans la table de référence, onglet "Structure", menu "vue relationnelle", indiquer la colonne qui doit apparaitre dans la liste de choix dans "Colonne descriptive"

    Je vais y arriver , je l'espère.

    Merci

  6. #6
    Membre confirmé
    Homme Profil pro
    Developpeur
    Inscrit en
    Novembre 2011
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 196
    Par défaut re
    Décidément je n'y arrives pas, je vais mettre tous les éléments :

    Une base de données "travail" avec 2 tables, "contact" et "message".

    Ci dessous le code de la BDD :

    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
    30
    -- Structure de la table `contact`
    --
     
    CREATE TABLE IF NOT EXISTS `contact` (
      `id` int(20) NOT NULL AUTO_INCREMENT,
      `Date` date NOT NULL,
      `civilite` enum('monsieur','madame','Mademoiselle') NOT NULL,
      `nom` varchar(255) NOT NULL,
      `adresse` varchar(100) NOT NULL,
      `cp` varchar(10) NOT NULL,
      `ville` varchar(500) NOT NULL,
      `telephone` varchar(200) DEFAULT NULL,
      `web` varchar(500) NOT NULL,
      `commentaires` varchar(10) NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `messages`
    --
     
    CREATE TABLE IF NOT EXISTS `messages` (
      `id` int(20) NOT NULL AUTO_INCREMENT,
      `contact` varchar(200) DEFAULT NULL,
      `message` text NOT NULL,
      `date` date NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
    Mes BDD sont biens en InnoDB.

    Je souhaite avoir une liste déroulante (sous phpmyadmin)
    Je créer des contacts dans ma table contact
    Je souhaiterai récupérer tous les contacts en liste déroulante dans le champ "contact" de ma table "messages"

    Dans ma table contact je créer un nouvelle index avec pour type d'index "index"

    Lorsque je vais dans la vue relationnelle je n'ai que l'id qui se charge et je ne peux rien faire d'autres.

    J'ai beau tourner la problématique dans tous les sens rien à faire.

Discussions similaires

  1. Requête : Liaison de table
    Par ghan77 dans le forum Bases de données
    Réponses: 5
    Dernier message: 09/12/2005, 15h45
  2. Liaison entre tables
    Par Thierry69800 dans le forum Access
    Réponses: 1
    Dernier message: 20/11/2005, 23h19
  3. [données externes] liaison de tables
    Par tiptop dans le forum Access
    Réponses: 9
    Dernier message: 21/10/2005, 17h57
  4. Problèmes de liaisons entre tables ...
    Par Mangun dans le forum Access
    Réponses: 2
    Dernier message: 28/09/2005, 11h35
  5. liaison deux tables unilatéral
    Par atunam dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 15/04/2004, 22h01

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