我正在开发 PHP/MySQL 中的 webapp,我已经到了需要创建用户/组关联的地步。
这是我要拍摄的:
我将拥有越来越多的组和用户。
用户将能够随时修改他们的组关联
。组协会将决定
网站上显示的内容的优先级。发送给用户的电子邮件更新将由他们当前的组关联决定。
我的问题是,处理此用户/组关联的最佳方式是什么?
我当前的表结构如下所示(为便于沟通而简化):
Users:
User_ID, User_name, Fname, Lname, is_dealer
Deals:
Deal_ID, Dealer_ID, Deal_name, Deal_content
Dealers:
Dealer_ID, User_ID, Dealer_name, Dealer address.. etc.
我最初的想法是创建一个包含 Group_ID 和 Group_name 列的 Groups 表。然后我可以做以下两件事之一:
我可以在 Groups 表中创建一个名为“User_ID”的列,并且对于每个组关联,我都有一行说明 Group_ID、Group_name 和 User_ID。该选项感觉就像它会创建一个巨大的超级冗余数据库表。
我能想到的另一个选项是在 Users 表中创建一个 Group_ID 列,然后在必须解析的某种文本数组中填充与用户关联的所有组。这里的问题是我希望有无限数量的组,并且为我的用户表中的每一行将所有用户的组关联塞入一个“值”似乎超级草率。
真的,这是一个 SQL 数据库逻辑/设计问题。任何帮助都会有很大帮助。
谢谢!