我在 Microsoft SQL Server 2008 R2 中有一个名为
从数据库生成模型时,它会创建一个一对多关系,其中一个
这是否仅仅是实体框架检测到存在外键并忽略数据库中列的唯一性?
Page
的表,其中包含一个名为 ID
的主键。我还有另一个名为 Navigation
的表,其中包含一个名为 PageID
的列。 PageID
是对 Page
表中的 ID
列的唯一外键引用。这样创建了 Navigation
和 Page
记录之间的一对一关系。从数据库生成模型时,它会创建一个一对多关系,其中一个
Page
包含一个 Navigation
记录列表。这是否仅仅是实体框架检测到存在外键并忽略数据库中列的唯一性?
Navigation
表中 PageID
列的 SQL 如下:[PageID] INTEGER FOREIGN KEY REFERENCES [Page](ID) UNIQUE NOT NULL
< p > < code > Page 中< code > ID 列的SQL语句为:
[ID] INTEGER PRIMARY KEY IDENTITY(0, 1) NOT NULL
以下是我最初的解决方案,这也是Ladislav提到的。
Navigation
表中PageID
列的SQL代码如下:
[ID] INTEGER PRIMARY KEY FOREIGN KEY REFERENCES [Page](ID) NOT NULL