定义两个表,或者使用布尔标志来确定用户的类型,哪一个更好



我正在为我的一个项目设计数据库,我们有两种类型的用户,一种是普通用户(默认(,另一种是浓密用户,例如,它们具有相同的属性,但能力不同。

一个商业用户可以发布一个作业,而普通用户只能申请作业,什么都不能,哪一种是首选的方式

方法1

定义两个不同的表:由于两个用户都具有相同的属性,因此会占用存储空间

方法2

有一个布尔标志来确定用户exis_business_account属性的类型,这可能会使代码在if,else条件下膨胀。

这可以用角色来解决,但我需要为角色定义这样的表吗?

感谢您抽出时间

创建实体时,不希望有多个实体真正相同。在您的案例中,用户是一个实体(表(,其中一个属性是他们是否是业务用户。作为程序的一部分,当用户登录时,您将对照1个要登录的表以及要显示的函数集来检查用户。

最新更新