我在 SQL Server Compact 中创建数据库时遇到问题
我基本上有 5 张桌子(CentreDeCout、Profil、Groupe、CCProfilPivot、CCProfilGroupePivot)
CentreDeCout 以 NomCC 作为主键
Profil 以 NomProfil 作为主键
CCProfilPivot 以 NomCC 和 NomProfil 作为主键(参考 CentreDeCout 和 Profil 主键)
Groupe 将 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)
)
最后一个创建表给了我这个错误
SQL Exercution Error.
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)
)
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]
谁能帮帮我吗?
谢谢吉比特