首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建一个表,但在复合键中使用其他实体?

创建一个表,但在复合键中使用其他实体?
EN

Stack Overflow用户
提问于 2017-03-12 02:42:48
回答 1查看 21关注 0票数 0

我有两个主键表和一个复合表。

除了复合表中的主键表中的2个主键外,我还想获得一些其他信息。

我只是重复这些数据,还是他们可以在不重复的情况下将其他字段添加到复合字段?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-12 02:51:41

你目前的设计看上去很正确。但我认为您的EventVolunteer表应该如下所示:

代码语言:javascript
复制
CREATE TABLE EventVolunteer (
    eventID INTEGER,
    volunteerID INTEGER,
    FOREIGN KEY eventID REFERENCES Event(eventID),
    FOREIGN KEY volunteerID REFERENCES Volunteer(volunteerID),
    PRIMARY_KEY(eventID, volunteerID)
)

此桥表应该存在以存储事件与其志愿者之间的关系,而不是其他任何东西。事件和志愿者的所有元数据应该分别位于EventVolunteer表中。

如果需要引入一些信息,那么可以通过将EventVolunteer表与此桥表连接起来。如果索引设置在正确的位置,则此联接比您想象的要少得多。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42743126

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档