我正在使用PHP/MySQL开发Web应用程序,我已经到了需要创建用户/组关联的阶段。
这是我所追求的:
- 我将拥有越来越多的组和用户。 - 用户将能够在任何时候修改他们的组关联。 - 组关联将决定网站上显示的内容优先级。 - 发送给用户的电子邮件更新将由他们当前的组关联确定。
我的问题是,如何处理这个用户/组关联是最好的方式?
我的当前表结构简化如下:
我的初步想法是创建一个包含Group_ID和Group_name列的Groups表。然后我可以做以下两件事情之一: 1. 我可以在Groups表中创建一个名为“User_ID”的列,并且对于每个组合关系,我都有一行记录它的Group_ID、Group_name和User_ID。但是,这种方式会创建一个非常冗余的数据库表。 2. 我能想到的另一个选择是在Users表中创建一个Group_ID列,并将其填充为用户所关联的所有组的某种文本数组,需要进行解析。问题在于我希望有无限数量的组,并且将所有用户的组关联压缩成一个“值”显得非常笨拙。
实际上这是一个SQL数据库逻辑/设计问题。 任何帮助都将是巨大的帮助。
谢谢!
这是我所追求的:
- 我将拥有越来越多的组和用户。 - 用户将能够在任何时候修改他们的组关联。 - 组关联将决定网站上显示的内容优先级。 - 发送给用户的电子邮件更新将由他们当前的组关联确定。
我的问题是,如何处理这个用户/组关联是最好的方式?
我的当前表结构简化如下:
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表。然后我可以做以下两件事情之一: 1. 我可以在Groups表中创建一个名为“User_ID”的列,并且对于每个组合关系,我都有一行记录它的Group_ID、Group_name和User_ID。但是,这种方式会创建一个非常冗余的数据库表。 2. 我能想到的另一个选择是在Users表中创建一个Group_ID列,并将其填充为用户所关联的所有组的某种文本数组,需要进行解析。问题在于我希望有无限数量的组,并且将所有用户的组关联压缩成一个“值”显得非常笨拙。
实际上这是一个SQL数据库逻辑/设计问题。 任何帮助都将是巨大的帮助。
谢谢!