我有一个父级主表,它足够通用,可以保存子项的公共信息。由于孩子们大不相同,我们为他们创建了单独的表。所以我有这样的事情:
tblMaster
--------
MasterID int
Name varchar(50) --Common to all children and there are a bunch of fields like this
ChildType int -- Type of Child either ChildOne or ChildTwo
ChildID int -- need to store ChildOneID or ChildTwoID depending on type of Child, so that i can refer to children
tblChild1
--------
ChildOneID int IDENTITY
tblChild2
---------
ChildTwoID int IDENTITY
我是否应该根据ChildID
列在主文件中ChildOneID
或ChildTwoID
添加ChildType
?我有很多孩子,我已经简化了这个问题。
另一种方法是在主服务器中添加ChildOneID
和ChildTwoID
作为列,但由于我有多个列,我将有很多空列
编辑:感谢任何帮助
答案 0 :(得分:1)
我会将标识放在master的id中,然后在相应的子表中使用相同的id,如下所示。
ID int Identity
名称varchar(50) - 对所有孩子都很常见,并且有很多像这样的字段
ChildType int - ChildOne或ChildTwo的子类型
ID int
ID int
答案 1 :(得分:1)
你能拥有吗?
tblMaster
--------
MasterID int
Name varchar(50) --Common to all children and there are a bunch of fields like this
tblChild1
--------
ChildOneID int IDENTITY
MasterID int
tblChild2
---------
ChildTwoID int IDENTITY
MasterID int
假设每个孩子都有一个父母,否则设置一个联接表。如果它有很多很多。
答案 2 :(得分:0)