Vous n'êtes pas identifié(e).
Pages : 1
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
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
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 rsaERROR: 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
Pages : 1