我有一个关于如何在关系数据库中存储与特定角色相关的数据的架构问题。
我有三个角色,一个Subscriber Contact,,Teacher和Student。它们都存储在Users表中,但具有与每个相关的特定属性。学生有SchoolId, Grade, 订阅者联系人有DistrictId, 教师有ProgramId, SchoolId, Grade。
我应该为订阅者联系人、教师和学生设置三个单独的表,还是应该进行某种键/值查找?如果键/值查找我该怎么做,我怎么做外键,比如DistrictId和SchoolId?