Relational database 关系表优化超键

Relational database 关系表优化超键,relational-database,foreign-key-relationship,Relational Database,Foreign Key Relationship,我有一个想法,如何解决这个问题,但我想知道什么是最好的方式去做这件事 所以一个问题可以有多个答案 问题和答案可以有重点 用户只能对每个问题/答案打分 Question: id title Answer: id question_id response Points: id user_id question_id answer_id points 如你所见,问题是有问题id和答案id的积分表。现在我想我可以通过有问题id的积分表和答案id的积分表来解决

我有一个想法,如何解决这个问题,但我想知道什么是最好的方式去做这件事

所以一个问题可以有多个答案 问题和答案可以有重点 用户只能对每个问题/答案打分

Question:
  id
  title

Answer:
  id
  question_id
  response

Points:
  id
  user_id
  question_id
  answer_id
  points

如你所见,问题是有问题id和答案id的积分表。现在我想我可以通过有问题id的积分表和答案id的积分表来解决这个问题,然后我可以加入表格来获得总积分。这是最好的解决方案吗?

您不需要在积分表中添加questionid,因为可以通过答案表中的answerid访问问题

所以你们的意思是在积分表中,你们要么有answerid,要么有questionid,还有其他字段。如果是这种情况,那么看看这个链接,我更喜欢martin提出的解决方案。您需要制作两个连接表回答点和提问点。用户给问答对打分,但问题不是来自用户,答案也不是来自用户。是这样吗?