首页 > 解决方案 > 检查我的数据库关系结构是否正确

问题描述

我正在创建数据库结构,但我不确定它是否正确。

我的应用程序中的所有功能:

所有者 - 所有者可以查看他的所有城市 - 所有者可以查看他的所有商店 - 所有者可以查看所有用户(已分配和未分配给城市或/和商店)

CITY OWNER - 可以看到他的所有用户 - 可以看到“他的”城市中的所有商店

用户 - 只能看到他被分配的商店和商店来的城市。

https://i.imgur.com/HYjat9g.png

我还添加了其他信息。(例如在工人中我添加了“owner_id”以便于 mysql 查询,但我不知道我是否可以这样做)

标签: mysqldatabaselaravelrelationship

解决方案


这可能有点主观,但我仍然会说所有者、用户和工作人员都是正在登录系统的人。只是他们有不同的访问级别。

您可以将他们的姓名和基本信息存储在一个users表中,并有一列role可以区分一个人是所有者还是工人等。

然后让数据透视表 owner_worker 将所有者映射到工作人员。

另外我认为城市是一个实体,不应该有所有者 ID。您可以拥有城市表,然后是数据透视表 owner_city,其中列出了所有者购物的城市。


推荐阅读