我正在开发一个电子商务网站,我想让这个社区对群组,用户及其成员的数据库结构有所了解。
目标:在登录时确定用户的群组成员资格和访问权限。用户可以是此站点上的卖家,管理员,站点支持或任何人。必须是可扩展的。
初步思考:三个单独的表:users
,groups
和memberships
。成功登录后,在成员资格表中搜索用户的ID,并从成员资格表中的同一行获取组ID。从那里,另一个查询从组表中获取组信息(如组名称,描述等)。将会员资格存储在用户的会话中并将其称为一天。
关注:登录时,我不想不必要地执行其他查询。上面的“初步思考”包括登录时的3个单独查询。
问题:
groups
表中? 答案 0 :(得分:0)
数据库设计合理。由于用户可以属于多个组并且可以拥有多个成员身份,因此需要另外两个表USER_GROUP
和USER_MEMBERSHIP
来保存用户和组之间以及用户和成员之间的关系。