【发布时间】:2010-04-17 16:12:46
【问题描述】:
我想知道在我的数据库中存储不同类型用户的最佳方式是什么。
我正在编写一个具有 4 种主要用户类型(管理员、学校、教师、学生)的应用程序。 目前我有一张表,但我不确定这是存储用户信息的最佳方式。
例如...允许学生 PM 其他学生很简单(存储发送者和接收者 student_id),但允许教师 PM 学生需要另一个表(发送者 teacher_id,发送者 student_id)。
是否应该将所有用户存储在一个带有 user_type 字段的用户表中?如果是这样,教师/学生的具体信息仍然必须存储在另一个表中。
users
user_id, password_hash, user_type
students
user_id, student_specific_stuff...
teachers
user_id, teacher_specific_stuff...
如何阻止具有 user_type = student 的用户被意外输入到教师表中(因为两者都有 user_id)
只是想确保我在继续之前得到正确的数据库。 谢谢...
【问题讨论】:
标签: sql mysql database-design