Problème création table en SQL Server

anouar2002 Messages postés 6 Date d'inscription mercredi 14 octobre 2009 Statut Membre Dernière intervention 20 janvier 2012 - 18 janv. 2012 à 16:00
thebigmoon Messages postés 9 Date d'inscription mardi 17 avril 2012 Statut Membre Dernière intervention 18 mai 2012 - 17 mai 2012 à 16:36
Salut !!!
Je veux faire une création de certains tables en SQL Server 2005, il y a toujours un erreur concernant les clés étrangers je suppose qui me gène. Voici le code :
create table Ouverier (
id_ouv int NOT NULL primary key ,
    
nom_ouv varchar(20) ,);
create table Responsable(
id_res int NOT NULL ,
    id_ouv int NOT NULL  references Ouverier(id_ouv),
nom_ouv varchar(20) ,
nom_res varchar(20),
    constraint pk1 primary key (id_res,id_ouv),	);
create table Employee(
id_emp int NOT NULL ,
    id_ouv int NOT NULL  references Ouverier(id_ouv),
nom_ouv varchar(20) ,
nom_emp varchar(20),
    constraint pk2 primary key (id_emp,id_ouv),
);
create table Entreprise(
id_ent int NOT NULL primary key,
nom_ent varchar(20),
);
create table Commande(
id_comm int NOT NULL primary key,
);
create table Fournisseur(
id_four int NOT NULL primary key,
nom_four varchar(20),
);
create table Camion(
matricule int NOT NULL primary key,
);
create table Produit(
id_pdt int NOT NULL primary key,
nom_pdt varchar(20) ,
quantite int,
    seuil_min int,
id_ouv int REFERENCES Ouverier(id_ouv),
    id_res int REFERENCES Responsable(id_res),
    code_barre int REFERENCES Lot(code_barre),
);
commit;


Voici l'erreur généré par SQL Server 2005 :
Msg 1776, Niveau 16, État 0, Ligne 32
Aucune clé primaire ou candidate dans la table référencée 'Responsable' ne correspond à la liste des colonnes de référence de la clé étrangère 'FK__Produit__id_res__595B4002'.
Msg 1750, Niveau 16, État 0, Ligne 32
Impossible de créer la contrainte. Voir les erreurs précédentes.


Y-a-t-il une solution ? Merci d'avance

1 réponse

thebigmoon Messages postés 9 Date d'inscription mardi 17 avril 2012 Statut Membre Dernière intervention 18 mai 2012
17 mai 2012 à 16:36
Salut,
j'ai remarqué que dans la table produit tu as écris : code_barre int REFERENCES Lot(code_barre),
question: ou est la table Lot??
0