0

至少,在我看来是这样的。我正在使用 Sql Server CE 4.0 和 Visual Studio 2010。这是我第一次使用 Sql Server CE。

例如,我有两张桌子。一种称为模板:

TemplateID (int, primary key, identity)
TemplateName (nvarchar)

另一个称为产品:

ProductID (int, primary key, identity)
TemplateID (int, foreign key relationship with Templates)
ProductName (nvarchar)

创建这些表后,我尝试在 Products 的 TemplateID 字段和 Templates 的 TemplateID 字段的表之间建立外键关系。

建立关系后,当我查看服务器资源管理器中的 Products 表时,我看到 TemplateID 已被标记为 Products 中的主键。这不应该是该表中的主键!

这仅仅是 CE 表的一些奇怪的表示形式——意味着外键是其他表中的主键?看起来不是这样,因为单击 Products 表中的 TemplateID 列,并在 Properties 窗口中展开 Identity 标记,显示“表”是 Products,而不是 Templates。

如果有人能阐明这种陌生感,我将不胜感激。

4

1 回答 1

0

一些测试确认外键不包含在主键中,尽管在 Visual Studio 中显示。

因此,显然这只是在 Visual Studio Server Explorer 中显示表字段的一种笨拙、令人困惑的方式。

是的。我已经想念管理工作室了...

于 2012-05-25T20:49:20.427 回答