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

PostgreSQL Discussion :

Ajout de clefs étrangères


Sujet :

PostgreSQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 15
    Points : 19
    Points
    19
    Par défaut Ajout de clefs étrangères
    Bonjour à tous,

    Désolé de poser une question qui va paraître simpliste à tous utilisateur de PostgreSQL, mais je suis bloqué et j'ai besoin d'un petit coup de pouce.

    J'ai crée toutes les tables dont j'ai besoin avec les clefs primaires et toutes les contraintes nécessaires.
    Je dois encore ajouter les clefs étrangères pour lier ces tables ensemble et maintenir l'intégrité référentielle.

    Je possède une notamment une table langue qui contient les champs suivant :
    langueId (integer Primary key)
    nom (text)
    J'ai une autre table utilisateur qui contient les champs nécessaires dont un champs langue (integer).

    Je souhaite que ce champs langue devienne un clef étrangère vers le champs langueId de la classe langue.

    J'écris donc :

    ALTER TABLE utilisateur ADD FOREIGN KEY (langue) REFERENCES langue (langueId);

    ou

    ALTER TABLE public.utilisateur ADD FOREIGN KEY (langue) REFERENCES public.langue (langueId);

    J'obtiens la réponse :

    Error code 0, SQL state 42703: ERREUR: la colonne «langue» référencée dans la contrainte de clé étrangère n'existe pas

    J'utilise PostgreSQL vers 8.2 sous Linux x86-64

    Qui peut m'aider ?

    Merci

    Eric.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 128
    Points : 143
    Points
    143
    Par défaut
    Es-tu sûr du nom de ta colonne ? Elle n'aurait pas de majuscule par hasard ?

    Peux-tu poser le schéma de tes deux tables (un simple pg_dump -s suffit) ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 15
    Points : 19
    Points
    19
    Par défaut Resolu ! Merci !
    Bonjour Guillaume,

    J'ai effectivement des majuscules dans mes noms de champs.

    J'oubliais de mettre les guillemets lorsque je manipulais des noms avec des majuscules.

    Merci pour ton aide, je suis débloqué.

    @+

    Eric

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur lors de l'ajout d'une deuxième clef étrangère
    Par mensoif dans le forum Administration
    Réponses: 2
    Dernier message: 15/06/2009, 15h35
  2. clef étrangère référençant une autre base
    Par menoce dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 06/07/2005, 20h31
  3. 5 clefs étrangères?
    Par P@t dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/05/2005, 17h52
  4. [wamp5] [Relations] Clefs étrangéres
    Par nebule dans le forum Outils
    Réponses: 6
    Dernier message: 05/10/2004, 12h17
  5. [SQL SERVER 2000] Problème clef étrangére
    Par Tankian dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 11/05/2004, 11h44

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