Bonjour a tous !!
Je crée actuellement une base de données sous SqlServer 2005 Express.
Je suis confronté a un petit soucis, du a mon manque de connaissance en base de données.
Je crée cette table ayant une clé primaire composée :
create table LibelleVentilation
(
codeVentilation varchar(10),
idLangue varchar(3),
libVentilation varchar(100),
constraint pk_LibelleVentilation PRIMARY KEY (codeVentilation,IdLangue)
)
go
puis je crée une deuxième table, ayant une clé étrangère faisant référence à la première table :create table COEFVENTILATION
(
codeVentilation varchar(10),
aRa numeric(2,2),
constraint pk_COEFVENTILATION Primary key (codeVEntilation, aRa),
constraint fk_COEFVENTILATION foreign key (codeVentilation) references LibelleVentilation(codeVentilation)
)
go
Cette requête ne passe pas :
voici le message d'erreur : Msg 1776, Niveau 16, État 0, Ligne 7
Aucune clé primaire ou candidate dans la table référencée 'LibelleVentilation' ne correspond à la liste des colonnes de référence de la clé étrangère 'fk_COEFVENTILATION'.
il me semblait que même si on avait un clé double sur la table mère, on pouvait tout de même appeler un clé étrangère depuis la table fille sur l'un des deux attributs de la clé primaire de la table mère.
Est ce que quelqu'un pourrait m'expliquer pourquoi j'obtiens cette erreur, et si possible, une solution que je pourrais y apporter.
Je vous remercie d'avance pour les réponses que vous pourrez me donner.
Passez une bonne soirée.
-xaeris-