Sql ER图的建模

Sql ER图的建模,sql,database,entity-relationship,Sql,Database,Entity Relationship,其思想是为一个小应用程序设计一个简单的ER图 该应用程序是一个问答系统。每个用户都应该能够以文本形式提问,然后其他用户可以使用图像发布答案 最后,提出问题的用户应该能够选择图像作为正确答案 到目前为止,我的设计是三张桌子: 具有id、用户名、电话、位置、实名、密码等属性的用户 具有属性id、描述、时间、状态的问题 具有属性id、地址的图像 图像与用户、问题与用户之间存在多对一关系 然而,我不知道图像和问题之间的关系应该是什么样的 他们之间应该有一对一的关系吗?这个设计好吗 谢谢如果用户能够选

其思想是为一个小应用程序设计一个简单的ER图

该应用程序是一个问答系统。每个用户都应该能够以文本形式提问,然后其他用户可以使用图像发布答案

最后,提出问题的用户应该能够选择图像作为正确答案

到目前为止,我的设计是三张桌子:

  • 具有id、用户名、电话、位置、实名、密码等属性的用户
  • 具有属性id、描述、时间、状态的问题
  • 具有属性id、地址的图像
图像与用户、问题与用户之间存在多对一关系

然而,我不知道图像和问题之间的关系应该是什么样的

他们之间应该有一对一的关系吗?这个设计好吗


谢谢

如果用户能够选择一个图像作为问题的正确答案,这意味着应该有多个图像可供选择-因此,不,两者之间的一对一关系不是一个好主意

如果任何给定的图像只会在一个问题中使用,那么这就意味着问题与图像之间存在一对多的关系。如果同一个图像可以用于许多问题,那么这就意味着一种多对多关系


当然,您需要在问题表上具有“selected image”属性。

您如何区分作为问题的用户和作为答案的用户?此外,由于一个问题可以有许多图像作为答案,这也是一对多关系。您是否存储该问题的答案?是否有问题和问答表?@MimiEAM提出问题的用户无法回答自己的问题。因此,这就是我如何区分作为提问者的用户和作为回答者的用户。实体之间是否最好有三元关系或聚合,而不是三角形的相互关系?@水文:实体之间存在多对多关系(在关系建模中),您应该在它们之间有一个链接实体,它与每个链接实体都有多对一的关系-因此(例如),如果问题和图像之间有多对多的关系,那么它们之间应该有一个问题-图像链接实体。(在本例中,链接实体可能对应于问题中未包含的“提供答案”实体。)虽然此代码可以解决提问者的问题,但最好解释它是如何工作的,以及它与提问者尝试过的内容(如果他尝试过任何东西)之间的区别。
USER with attributes id, username, phone, location, realname, password.
QUESTION with attributes id, desription, time, status.
IMAGE with attributes id, address

Image_question 1:n ( One question can have multiples images)

User_questions 1:n