我想创建关系多对多的数据库。但我有错误
SQL71516 ::引用的表'[dbo]。[BookAuthors]'包含no 与引用列列表匹配的主键或候选键 外键。如果引用的列是计算列,则为 应该坚持下去。 SQL71516 ::引用的表 '[dbo]。[BookAuthors]'不包含匹配的主键或候选键 外键中的引用列列表。如果引用 column是一个计算列,应该是持久化的。
如何解决这个问题?
CREATE TABLE [dbo].[BookAuthors] (
[Book] INT NOT NULL,
[Author] INT NOT NULL,
PRIMARY KEY CLUSTERED ([Book] ASC,[Author] ASC)
);
CREATE TABLE [dbo].[Books] (
[Id] INT NOT NULL,
[Title] NVARCHAR (MAX) NULL,
[Price] MONEY NULL,
[Category] INT NULL,
PRIMARY KEY CLUSTERED ([Id] ASC),
FOREIGN KEY ([Id]) REFERENCES [dbo].[BookAuthors] ([Book])
);
CREATE TABLE [dbo].[Authors] (
[Id] INT NOT NULL,
[Name] NCHAR (10) NOT NULL,
PRIMARY KEY CLUSTERED ([Id]),
FOREIGN KEY ([Id]) REFERENCES [dbo].[BookAuthors] ([Author])
);