在我的数据库中,帐户表维护注册到我的站点的所有帐户。还有一组资源维护在名为Resource1,Resource2 ... ResourceN的资源表中,所有资源都属于某个帐户。
现在的问题是我应该将帐户 ID 作为列嵌入到每个表中吗?或者为每个资源使用一个连接表?我个人喜欢加入表格,但不确定哪种设计更适合此类问题。
谢谢你
使用“连接表”在关系方面会更加灵活,例如,您可以在资源和客户记录之间建立一对一、一对多或多对多的关系,尽管强制执行这些关系可以变得复杂。如果您不确定这些关系具有或将具有什么样的约束,我会采用“连接表”的想法。
根据我从您的问题中了解到的情况,这个设计怎么样。
我们创建三个表,Accounts、AccountResources、Resources。使用关联表也可以简化查询。
表:帐户列:AccountID
表:AccountResources 列:AccountID ResourceID
这里 AccountID 和 ResourceID 形成了复合键。
表:资源列:ResourceID