PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 03/12/2008 22:32:28

bennkabazz
Membre

probleme de clé

bonjour tout le monde
j'ai une table A qui contient une clé primaire composée de la concatenation des trois champs de cette table ; et 3 autres tables B,C,D dont leurs  differentes clés primaires composés d'un seuls champs  doivent referencer la clé primaire de la table A ; comment faire cette liaison ? car ma grande difficulté , c'est la clé est composé  , donc comment lier cette clé de trois champs aux clés d'un seul champs des autres tables ?
merci de votre aide

Hors ligne

#2 04/12/2008 00:18:22

gleu
Administrateur

Re : probleme de clé

Je ne comprends même pas la logique derrière. Un ensemble de trois valeurs ne peut pas être égal à une seule valeur. Ou alors une fonction permet à partir des trois valeurs d'une batir une.

Bref, sans plus d'infos, ce n'est pas possible car ce n'est même pas logique.


Guillaume.

Hors ligne

#3 04/12/2008 00:49:04

bennkabazz
Membre

Re : probleme de clé

j'essaie d'être plus claire , c'est comme ça que j'ai procedé pour créer ma clé primaire dans la table A.

ALTER TABLE tableA  ADD CONSTRAINT la_table_pkey PRIMARY KEY (champ1, champ2,champ3);

et dans une fonction jai mis les valeurs de ces trois champs dans un champs unique  nommé id_rsa , mais quand je fais  :

alter TABLE tableB add constraint cle_etrangere foreign key (colonneB) references tableA (id_rsa) on delete cascade;

:

j'ai ce message d'erreur :

NOTICE:  constraint cle_etrangère_diag on table diagnostique depends on table rsa
NOTICE:  constraint cle_etrangère_um on table unite_medicale depends on table rsa
NOTICE:  constraint cle_etrangère on table acte depends on table rsa

ERROR: cannot drop table rsa because other objects depend on it
État SQL :2BP01
Astuce : Use DROP ... CASCADE to drop the dependent objects too.

merci pour votre assistance

Dernière modification par bennkabazz (04/12/2008 00:49:59)

Hors ligne

Pied de page des forums