0

我正在创建一个网络应用程序,用户可以在其中注册并创建拥有自己用户的会员网站。这是我的数据库架构https://dl.dropbox.com/u/558799/schema.pdf的开始

所以一个用户可以属于很多站点,一个站点可以有很多用户。但是用户需要作为每个站点的单独用户输入,以便他们可以拥有不同的密码和配置文件。示例用户 A 是站点 A 和站点 B 的成员。用户 A 需要能够在站点 A 中更改其密码而不影响站点 B 的密码。我想我可以在用户表上添加 site_id 作为外键,这样用户就可以在其中两次。

我还应该在每个表中为其他表放置一个 site_id 外键吗?因此,webapp 上的每个查询都将 site_id 作为参数。因此,当我为用户查找订单时,我会将 site_id 和 user_id 作为参数。

这是设计此类应用程序的最佳方式吗?

4

1 回答 1

0

也许考虑将密码移动到关联表中。

user
------
user_id

site
-------
site_id

user_site
----------
user_id
site_id
password   <--- here you will get a different password per site

还可以考虑向关联表 user_site_id 或其他内容添加一个 id - 然后您可以将其用作所有其他引用的键

于 2012-12-09T14:29:22.110 回答