0
CREATE TABLE [dbo].[Book] (
[Id] INT IDENTITY (1, 1) NOT NULL,
[Auhor] NVARCHAR (50) NOT NULL,
[Name] NVARCHAR (50) NOT NULL,
[Price] DECIMAL (18) NOT NULL,
[UserId] INT NOT NULL,
FOREIGN KEY ([UserId]) REFERENCES [dbo].[UserProfile] ([UserId])
);
CREATE TABLE [dbo].[UsedBook] (
[Id] INT IDENTITY (1, 1) NOT NULL,
[BookId] INT NOT NULL,
[Email] NCHAR (10) NULL,
[MobileNumber] VARCHAR (15) NULL,
PRIMARY KEY CLUSTERED ([Id] ASC),
FOREIGN KEY (BookID) REFERENCES [dbo].[Book]([Id])
);
你能否给我UsedBook
表中的外键命令的正确语法?因为每次我试图运行它,它都会给我错误正确的语法来声明外键
SQL71516 ::被引用的表'[dbo]。[Book]'不包含与外键中的引用列表匹配的主键或候选键。如果被引用的列是一个计算列,它应该被保留。
很遗憾,我的英语:)
的错误消息是晶莹剔透有关的原因:你的表'书'没有你可以参考的**主键**! FK只能在表中引用PK(或者有时,根据您使用的具体数据库,它也可以引用唯一的约束)。你的语法很好 - 语义都是错误的.... –