Salut,
Voila mon pb:
J'ai une table Famille_Produit avec une clé primaire double (2 champs) et je veux ne référencer qu'un de ces champs dans ma clé étrangère d'une table Produit.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
CREATE TABLE produit (
    id_produit INT4 DEFAULT NEXTVAL('seq_id_produit') NOT NULL,
    id_famille_produit INT4 NOT NULL,
    nom_article VARCHAR(40),
    PRIMARY KEY (id_produit)
);
CREATE TABLE famille_produit (
    id_famille_produit INT4 DEFAULT NEXTVAL('seq_id_famille') NOT NULL,
    id_langue INT4 NOT NULL,
    nom_famille VARCHAR(40),
    PRIMARY KEY (id_famille_produit, id_langue)
);
ALTER TABLE produit
    ADD FOREIGN KEY (id_famille_produit) REFERENCES famille_produit (id_famille_produit);
Réponse :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
ERROR:  UNIQUE constraint matching given keys for referenced table "famille_produit" not found
y a t'il un moyen de "forcer" la clé étrangère?