我有一个数据模型,即如下...复合主键或外键
- 的话题可以有多个练习(ExerciseTopic(FK)引用TopicId(PK))
- 的运动能有多个问题(练习(FK)引用ExerciseId(PK))
- 一个问题可以有多个(4)AnswerChoices
我想为AnswerChoices表的三部分主键,因为它是这种组合,它将唯一标识每个选择。
- 我需要在AnswerChoices表数据完整性的目的外键或
- 将复合主键是足够的?如果外键是必需的,它将是两部分复合外键(ExerciseId,QuestionId)?
示例数据...
- 主题(T1)
- 练习E1
- 问题1(AnswerChoices:A,B,C,d)
- 问题2(AnswerChoices:A,B,C,d )
- 问题3(AnswerChoices:A,b,C,d)
- 练习E2
- 问题1(AnswerChoices:A,B,C,d)
- 问题2(AnswerChoices:A,B,C,d)
- 问题3(AnswerChoices:A,B,C,d)
- 练习E3
- 问题1(AnswerChoices:A,b,C,d)
- 问题2(AnswerChoices:A,b,C,d)
- 问题3(AnswerChoices:A,B,C,d)
- 练习E1
- 主题(T2)
- 练习E1
- 问题1(AnswerChoices:A,B,C, d)
- 问题2(AnswerChoices:A,b,C,d)
- 问题3(AnswerChoices:A,b,C,d)
- 练习E2
- 问题1(AnswerChoices:A,B,C,d)
- 问题2(AnswerChoices:A,B,C,d)
- 问题3(AnswerChoices:一, b,C,d)
- 练习E3
- 问题1(AnswerChoices:A,b,C,d)
- 提问2(AnswerChoices:A,B,C,d)
- 问题3(AnswerChoices:A,B,C,d)
- 练习E1