我目前正在为我们学校开发一个新的数据库/ Web应用程序。我将需要提供一些背景信息,以使我的问题更具关联性。用户结构,多种用户类型
有许多不同的用户类型可访问此应用程序,每个用户需要访问应用程序的不同部分,并为他们可能访问的每个“区域”授予不同的权限。
例如:
学生可以登录并查看有信息,并更新他们的详细资料,以及他们的报告下载副本(所以他们只能看到自己的信息)
教师可以登录和访问有信息和他们教
经理可以登录并访问那里的信息和所有的老师和学生,他们管理
有那么一群其他登录类型的所有学生但是对于这个问题他们并不重要,因为他们在技术上只是更多的用户,他们没有或不需要他们自己的表格来获取额外的信息。
我大部分决定了我很满意的结构,但是我一直在改变我的想法,我认为以下做法是最好的。
我有一个用户表(为user_t),所有相关用户信息存储(用户名,密码等)
不过,我也有一些用户类型(例如,学生的单独的表,工作人员等),这是必要的,因为学生需要存储与工作人员不同的信息。 这里是我的问题所在,所有的用户将有一些相同的基本字段(名字,姓氏,出生日期,性别等)。
我应该将这些存储在User_T表中吗?或者在单独的表格中?
如果我将它们全部存储在User_T表中,这可以让应用程序更容易地获取他们的信息并允许他们更新,在显示学生详细信息的时候,例如,我会需要引用User_T来获取学生的名字等
我目前的想法是,最好的选择是将所有字段分开的表,并将它们加入到视图User_V中,并指定数据的来源,以便当一个更新是预先形成的,它可以适用于适当的表。
想法?
个人是否可以担任多个角色,例如,行政助理可以上课吗? – HABO
范围是否有其他限制。例如,教师的行为是否仅限于他们所在的部门或他们班级的学生? – HABO
是个人可以扮演不止一个角色,例如,您可以成为教师,经理,甚至是薪酬官员,而且您不仅需要访问不同的页面,还需要在页面中使用不同的访问权限(例如:薪资官员可以添加工资单recrods,经理不能,但可以查看记录),范围也有限制,例如一名教练可能在德语中,但可能只能看到或行动他们的老师,作为管理员可能只能看到那里的学生区域等 – UltimateVenom