与用户表相比,学生与教师之间的正确结构关系

问题描述 投票:3回答:1

如果我有instructor vs student,那么用户表的数据库结构设计是什么?

在单独的表中创建每个并且id是用户表是否正确

像这样?:

table design

或者创建新的标志字段(1或2)来定义students中的instructors像这样?:

table design2

我知道两者都有效,但我要求得到最专业的答案。

对我来说,我正在为Laravel工作,并且创建关系非常容易。

database laravel database-design relational-database relationship
1个回答
2
投票

当您具有特定于子类型的属性,关系或约束时,建议使用第一个选项 - 为用户的每个子类型分隔表。和一组已知的固定子类型。

当您没有任何特定于子类型的属性,关系或约束时,建议使用第二个选项 - 类型指示符列;并且更适合用户管理的子类型。

无论您是否有重叠或不相交的子类型都无关紧要。两者都可以记录在单独的表中;或重叠的子类型可以通过多个布尔字段指示,并通过单个字段不相交。

© www.soinside.com 2019 - 2024. All rights reserved.