用户表结构设计咨询

请教各位大佬几个问题,不同用户类型,比如前台和后台用户、商家、供应商之类的,是每个用户单独一张表,还是公用一张用户表、只是用户表只存储认证相关字段、每个用户类型额外一张用户信息表?
谢谢!

阅读 7.3k
2 个回答

我的话,这样设计表结构

用户表: id,username,email,type_id,isactive // type_id作为外键关联用户类型
    示例:
    1  张三  zhangs@123.com  1
    2  李四  lis@123.com  2
    3  王五   wangw@123.com   3
    4  赵六   zhangl@123.com  4
用户类型表:id,usertype
    示例:
    1   前台
    2   后台
    3   商家
    4   供应商

将用户类型抽取出来,用户信息共用一张表
这个其实是sql设计的要符合的范式要求。

简单说说,
如果每个用户类型的用户设计一张表,现在4个类型,那就是4张表,只要增加一个用户类型,那么就要增加一张表,表中的大部分属性也就是字段是相同,想想也能明白这样做很不妥。
相反如果将用户类型从中抽取出来,做用户类型表,用户信息作为一张表,那么就不会有这样的麻烦。
增加一个用户类型,也只是在用户类型表中增加一条记录,用户信息表用外键关联即可

新手上路,请多包涵

我觉得可以先设计两张表,一个用户表存储前台C端用户,另一个表存储后台用户,包括后台用户、商家、供应商之类。后台这些用户存储在一个表,是根据你描述内容来看,他们属于一类管理,可能只是权限不同而已。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
1 篇内容引用
推荐问题