我有一个数据库,通常用户是中心对象
在数据库中,我有一个表roles
和users in roles
,因此我可以在网站上为用户提供不同的权限
但现在我有一个疑问
我在一个数据库之前看到过这样的结构(用户与其他表的关系是1:1):
User{UserId, Username, Email etc.}
Admin{UserId, some specific columns}
Child{UserId, some specific columns}
Admin{Parent, some specific columns}
和其他表格不是通过用户表而是通过Admin, Child and admin.
连接到用户
因为现在我设计了我的数据库,我有用户,用户可以是Admin, CompanyManager and Professor
我想知道我应该像上面展示的那样设计表格还是仅仅依靠角色?
第一种方法的优点是什么?
而且在我的商业模式中,用户不必是CompanyManager或Professor,所以这实际上是1到0或1设计。
使用这样的场景设计数据库的好方法是什么?
答案 0 :(得分:1)
为特定类型的用户设置特定表的优点是存储仅与该类用户相关的信息。
在您的示例中,
答案 1 :(得分:0)
我更喜欢这种方法:
通过这种方式,您可以轻松地将角色分组到类别中并将其分配给用户。