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

Requêtes MySQL Discussion :

Foreign key mysql


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 98
    Par défaut Foreign key mysql
    salut
    quand je crée une clé étrangère je peux toujours ajouter des lignes dans child même si ce n'est pas l ID du parent
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    CREATE TABLE parent(id INT NOT NULL,
                        PRIMARY KEY (id)
    ) 
    CREATE TABLE child(id INT, parent_id INT,
                     CONSTRAINT fk FOREIGN KEY (parent_id)
                     REFERENCES parent(id)
     
    )
    je ne sais pas pourquoi pourtant la syntaxe est correcte

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Comme tu n'as pas spécifié le moteur dans la création des tables, vérifie qu'elles utilisent bien le moteur InnoDB.

    Et à tout hasard, une colonne porteuse d'une clé étrangère doit être préalablement indexée. Je crois que c'est automatique avec MySQL mais je n'en suis pas sûr.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre éclairé Avatar de GyZmoO
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    428
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 428
    Par défaut
    "Je crois que c'est automatique avec MySQL mais je n'en suis pas sûr"

    Pour les tables InnoDB en tout cas c'est automatique oui

Discussions similaires

  1. [MySQL] Utilisation des Foreign Key
    Par Regnak dans le forum Langage SQL
    Réponses: 5
    Dernier message: 01/08/2006, 15h37
  2. [mysql]table avec foreign key
    Par samjung dans le forum Langage SQL
    Réponses: 24
    Dernier message: 24/11/2005, 14h42
  3. Foreign Key sur Mysql
    Par lemagicien dans le forum Outils
    Réponses: 1
    Dernier message: 23/09/2005, 13h39
  4. mysql et foreign key
    Par skoukni_brahim dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 02/06/2005, 18h14
  5. foreign key dans mysql
    Par guillevin dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 08/04/2004, 15h07

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