Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/10/2007, 23h08   #1
Candidat au titre de Membre du Club
 
Inscription : octobre 2007
Messages : 15
Détails du profil
Informations personnelles :
Âge : 36
Localisation : Belgique

Informations forums :
Inscription : octobre 2007
Messages : 15
Points : 11
Points : 11
Envoyer un message via MSN à g56589
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.
g56589 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2007, 10h39   #2
Membre habitué
 
Inscription : août 2007
Messages : 128
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 128
Points : 146
Points : 146
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) ?
gleu_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2007, 12h31   #3
Candidat au titre de Membre du Club
 
Inscription : octobre 2007
Messages : 15
Détails du profil
Informations personnelles :
Âge : 36
Localisation : Belgique

Informations forums :
Inscription : octobre 2007
Messages : 15
Points : 11
Points : 11
Envoyer un message via MSN à g56589
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
g56589 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h08.


 
 
 
 
Partenaires

Hébergement Web