SQL Server 2012 MVC3 EF4.3.1 代码优先项目。
我有一个Teacher
和Student
表具有一对多的关系。的Teacher
表Id
将用作帐号,因此它的编号需要与'sId
分开。Student
我想创建一个Person
表(包含共享属性,例如First, Last, Phone, Email
)以减少属性的冗余。Person
也将与表具有一对多关系Address
。
我曾考虑过尝试使用 Table per Hierarchy 模型Teacher
并Student
从中继承,但 Id 集不会是分开的,我必须在表Person
内部建立一对多的关系。Person
我可以通过代码生成 ID,但内部一对多可行还是实用?
另一种情况是设置Person
为一个子表,在 andTeacher
和Person
and 之间是一对一的Student
,Person
但我不确定如何或是否可以在一张桌子上有两个单独的一对一。
有没有一种实用的方法来做我想做的事情,或者我不应该担心冗余而不使用Person
表格?Address
如果我走那条路,是否有可能与表(Teacher-Address
和)有两个单独的一对多关系Student-Address
?或者就此而言,一对多(Teacher-Address
,教师可能有额外的送货地址)和一对一(Student-Address
)?
谢谢