-
Notifications
You must be signed in to change notification settings - Fork 35
不同用户,使用不同的表存储
吴达 edited this page May 12, 2020
·
1 revision
由于有很多种用户类型,比如最简单的划分是分为个人用户和企业用户,而每种类型的用户所需填写的资料是不同的,比如个人用户就没有营业执照,企业用户可能就不是用手机号码作为账号登录后台,在有些系统中这些用户都是存放在相同的表中,这个表的字段既包含了个人用户需要的字段,也包含了企业用户需要的字段,只是根据不同的用户类型,所填写的字段不一样,这其实很容易让数据混乱。不管是个人还是企业用户,他们都是用户,有【IS-A】的关系,比如:个人用户 【IS-A】用户,因此在这里,我们抽取一个主的user表,表中字段是各种不同类型的用户共有的字段(可能就只有一个用户ID字段),然后不同类型的用户在各自所在的表中,比如个人用户使用individual_user_xx这样的格式,以individual_user为前缀,和其他类型的用户数据分开。这样做的好处有: (1),每种不同类型的用户只需要处理自己所需的字段,数据清晰,业务逻辑清晰; (2),由于有一个主的user表,其他表关联用户时,比如店铺表,商品表中的user_id字段的定义也就明确了,不会出现【如果xx,就代表是A用户】,【如果yy,就代表是B用户】的情况。
架构
数据库设计
约定
基础工具
DataType模块
Property模块
权限模块