我目前正致力于基于研究期刊/纸质数据库的数据库设计任务。 我遇到的主要问题是决定某些实体是否有足够的唯一标识符(以及正确的标识符)以及我是否能够正确地建立关系。
所以举个例子。每篇研究论文都有一个独特的PaperID(PK)。每篇研究论文都有一份关键词列表(通常为4-5),作者在论文开头列出了这些关键词。
我是否正确地认为这是一对多的关系? - 一篇论文有很多关键词,每个关键词实例属于一篇论文。
Paper PK(PaperID)是否成为FK&关键字表的PK?这种布局是否支持上述一对多关系?
e.g。
表格 - 论文
PK = PaperID
属性列表
表格 - 关键字
PK,FK = PaperID
关键字
因此,查找具有特定关键字的所有论文(例如“猪”)的查询将显示类似于以下内容的结果:
PaperID |关键字
1 | '猪'
2 | '猪'
63 | '猪'
我的逻辑是正确的思考方式吗?
非常感谢任何建议或帮助!
由于
***编辑:所以似乎大多数人认为这是一种多对多的关系,不幸的是,研究论文中有许多关系(例如研究目的,主要主题,子主题) (s),研究类型,研究问题)- >那么我是否必须通过为每一个创建关联实体来解决这些问题?!当然必须有更好的方法来解决这些多对多的问题,而不是必须创建一个额外的...... 8-10关联实体?超类型/子类型?
再次感谢大家的回应。我一边学习!
答案 0 :(得分:0)
我原以为“关键字到纸”会是多对多的关系。关键字“猪”出现在许多论文中。任何一篇论文都可以有很多关键词。这样你就可以减少文本的重复。 (但话说回来,编码你的方式可能会更快。)
如果您的关系是一对多,那么您可能需要在关键字表上使用复合键,因此关键字的PK由PaperID +关键字组成。老实说,我不会出汗 - 听起来你只想要一个关键词的索引,而不是担心为那张桌子制作一个结构良好的PK。