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 :

Quelle est la syntaxe précise pour une foreign key ?


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 156
    Points : 74
    Points
    74
    Par défaut Quelle est la syntaxe précise pour une foreign key ?
    Bonsoir,

    Voilà maintenant 4 heures que je fouille dans google sans succes... Voici mon problème :

    J'ai deux tables qui existent deja :

    t_produit (id_produit, prix, type)
    t_type (type, taille, couleur)

    Je veux ajouter une clé étrangère pour mettre en relation la colonne type des deux tables.

    Mais comme j'y connais encore rien au synthaxe je vous demande de l'aide !!!

    J'ai copier a l'exact la synthaxe suivante dans la rubrique SQL "Exécuter une ou des requêtes sur la base " :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE t_type CONSTRAINT fk_type FOREIGN KEY (type) REFERENCES t_produit (type)
    Mais voila l'erreur qu'il me sort : #1064 - You have an error in your SQL syntax

    au secours !

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 922
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 922
    Points : 6 038
    Points
    6 038
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE t_type ADD CONSTRAINT.....
    devrait mieux marcher...

    Il faut bien sûr que les 2 tables soient de type INNODB, que les 2 colonnes soient indexées et que l'option INNODB soit active au lancement du serveur.

    Je pense aussi que la contrainte est à définir sur l'autre table ?

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 156
    Points : 74
    Points
    74
    Par défaut
    D'accor, super ! merci pour les precisions,

    J'ai bien réussi a mettre la clé étrangere, cependant je n'arrive plus à ajouter les données dans les tables !!!

    #1452 - Cannot add or update a child row

  4. #4
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 922
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 922
    Points : 6 038
    Points
    6 038
    Par défaut
    Sur quelle table est définie la contrainte ?

Discussions similaires

  1. liste des colonnes et tables pour une foreign key
    Par cbleas dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 28/06/2014, 08h23
  2. Réponses: 1
    Dernier message: 21/02/2010, 08h42
  3. Réponses: 3
    Dernier message: 11/06/2008, 16h47
  4. Réponses: 35
    Dernier message: 09/04/2007, 00h17

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