У меня проблема с созданием базы данных в SQL Server Compact.
У меня в основном 5 таблиц (CentreDeCout, Profil, Groupe, CCProfilPivot, CCProfilGroupePivot)
В CentreDeCout в качестве первичного ключа используется NomCC
Профиль имеет NomProfil в качестве первичного ключа
CCProfilPivot имеет NomCC и NomProfil в качестве первичного ключа (по отношению к первичному ключу CentreDeCout и Profil)
Группа имеет NomGroupe в качестве первичного ключа
и мне нужно, чтобы CCProfilGroupePivot имел первичный ключ CCprofilPivot и NomGroupe в качестве своего первичного ключа.
Таким образом, первичным ключом будет NomCC, NomProfil и NomGroupe.
NomCC и NomProfil будут взяты из CCProfilPivot и NomGroupe из Groupe
Вот как я это сделал
CREATE TABLE CentreDeCout(
NomCC nvarchar(100) primary key
)
CREATE TABLE Profil(
NomProfil nvarchar(100) primary key
)
CREATE TABLE Groupe(
NomGroupe nvarchar(100) primary key
)
CREATE TABLE CCProfilPivot(
NomCC nvarchar(100) references CentreDeCout(NomCC),
NomProfil nvarchar(100) references Profil(NomProfil),
PRIMARY KEY(NomCC,NomProfil)
)
CREATE TABLE CCProfilGroupePivot(
NomCC nvarchar(100) references CCProfilPivot(NomCC),
NomProfil nvarchar(100) references CCProfilPivot(NomProfil),
NomGroupe nvarchar(100) references Groupe(NomGroupe),
PRIMARY KEY (NomCC,NomProfil,NomGroupe)
)
Последняя таблица создания дает мне эту ошибку
<Code>
SQL Exercution Error.</p>
<p>Exercuted SQL statement: CREATE TABLE CCProfilGroupePivot(
NomCC nvarchar(100) references CCProfilPivot(NomCC),
NomProfil nvarchar(100) references CCProfilPivot(NomProfil),
NomGroupe nvarchar(100) references Groupe(NomGroupe),
PRIMARY KEY (NomCC,NomProfil,NomGroupe)
)</p>
<p>error Source: SQL Server Compact ADO.Net Data Provider
Error Message: The referenced table must have a primary or candidate key.[FK Name = FK_CCProfilGroupePivot__00000000000000D7]</p>
<p>
Может кто-нибудь помочь мне?
Спасибо, Гибит