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 :

Création d'une clé étrangère viable ?


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 éclairé Avatar de bond70
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 300
    Par défaut Création d'une clé étrangère viable ?
    Salut,

    Voilà je débute sur Phpmyadmin 3.2.0.1 et j'aimerais crée une clé étrangère viable entre deux tables. Voici les deux tables dans le screen ci-dessous. Pour le MR çà donnerais donc ceci :

    ETUDIANT(idEtudiant, nomEtudiant, prénomEtudiant, photoEtudiant, dateDeNaissanceEtudiant, adresseEtudiant, codePostalEtudiant, villeEtudiant, paysEtudiant, emailEtudiant, #idSexe,)

    SEXE(idSexe,libelleSexe)
    Pour l'instant j'ai fait ce que j'ai trouvé sur le web, c'est à dire :

    -J'ai crée un champ sexeId de type INDEX dans la table ETUDIANT

    - Ensuite dans "gestion des relations" j'ai crée une relation (clé étrangère) entre etudiant.sexeId et sexe.idSexe

    Mais çà me sort cette erreur lors de cette dernière manip :

    #1452 - Cannot add or update a child row: a foreign key constraint fails (`basestage`.<result 2 when explaining filename '#sql-408_60b'>, CONSTRAINT `#sql-408_60b_ibfk_1` FOREIGN KEY (`sexeId`) REFERENCES `sexe` (`idSexe`) ON DELETE CASCADE)
    PS : je précise que mes tables sont en InnoDB

    Merci de votre aide !

  2. #2
    Membre éclairé Avatar de bond70
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 300
    Par défaut
    C'est bon je crois que j'ai réussi. Le problème venait de la création de l'Index, il faut cliquer sur l'icône au lieu de le faire depuis la liste déroulante sinon çà marche pas !

  3. #3
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Citation Envoyé par bond70 Voir le message
    -J'ai crée un champ sexeId de type INDEX dans la table ETUDIANT
    Ce n'est pas un INDEX, mais une clé étrangère qu'il faudrait, c'est tout.

    Un INDEX c'est fait pour optimiser une table, ça n'a aucun rapport avec les relations entre 2 table.
    D'ailleurs, un INDEX sur idSexe pour la table "etudiant" ne serait pas judicieux à mon avis.

    As tu bien créé les clés primaires des 2 tables ?
    ETUDIANT -> idEtudiant
    SEXE -> idSexe

  4. #4
    Membre éclairé Avatar de bond70
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 300
    Par défaut
    Oui j'ai respecté mon MR :

    ETUDIANT(idEtudiant, nomEtudiant, prénomEtudiant, photoEtudiant, dateDeNaissanceEtudiant, adresseEtudiant, codePostalEtudiant, villeEtudiant, paysEtudiant, emailEtudiant, #idSexe)

    (ici etudiant.idSexe est de type INDEX et il pointe vers sexe.idSexe)

    SEXE(idSexe,libelleSexe)
    Merci !

Discussions similaires

  1. Création d'une clé étrangère : Msg 1776.
    Par guitou0 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 13/01/2011, 12h12
  2. Réponses: 2
    Dernier message: 29/04/2009, 22h25
  3. Création d'une clé étrangére entre 2 tables
    Par kamnouz dans le forum Langage SQL
    Réponses: 4
    Dernier message: 21/01/2009, 13h43
  4. Problème a la création d'une clef étrangère
    Par tomy29 dans le forum Administration
    Réponses: 3
    Dernier message: 19/07/2008, 11h07
  5. création d'une clé étrangère sous mysql
    Par franfr57 dans le forum Outils
    Réponses: 2
    Dernier message: 23/03/2006, 09h24

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