2011-05-05 45 views
1

我有3张表,Person,Worker和Job。Linq to Entities - 速度问题

工人从Person继承。 每个工人可以有0..1个工作。但一个工作可以有多个工人。

由于Worker从Person继承,因此它们位于数据库内的同一个表中(使用PersonType上的映射)。

现在我的数据库与我的模型(关于外键)一起给了一些麻烦,所以我删除了我的数据库关系。

所以,现在我只关系数据模型(在视觉工作室)。

这是一件坏事吗? 当关系不在我的数据库中,但仅在数据模型中时,是否有速度降低?

在此先感谢!

回答

0

外键与一般性能无关。这只是保持数据一致的一个限制。所以,通过删除您的关系,您只能预期数据的一致性问题。如果您需要解决性能问题 - 请查看您的表所具有的索引。

+0

感谢anthares,我只想知道数据库中的关系是否使我的表现更好。如果不是我的问题得到解答。如果没有人在短时间内不同意,我会接受你的回答。谢谢! – Julian 2011-05-05 12:27:05

+0

您可能还想检查以下链接http://www.microsoft.com/technet/abouttn/flash/tips/tips_122104.mspx根据您使用的数据库,它可能会影响性能(无论方向是好还是坏) 。但这是依赖于你的数据库的内部实现,很少可以预测...我个人忽视它。 – anthares 2011-05-05 12:36:03