【发布时间】:2023-04-07 16:57:01
【问题描述】:
假设我有一个包含两个表 User 和 Store 的数据库。 让我们制定规则:
- 用户必须属于一个商店
- 一个商店可能有一个或多个用户
不过,商店可能有商店经理。最好的方法是什么?
在 Users 表中添加一个“is_store_manager”布尔列,或者在 Store 表中创建一个名为 manager_user_fk 的外键?我想这会创建多对多关系,这会很糟糕,但选择我认为的用户将是一个坚实的约束。最好的方法是什么?
【问题讨论】:
-
我个人建议添加一个名为
Role的表和一个名为UserRole的链接表。基于标志的方法绝对不会扩大规模,例如,您可能在较大的商店中也有副店长。拥有链接表UserRole将允许用户拥有多个角色。
标签: sql foreign-keys relationship