最佳答案
两者都不。 这里我们有一个自我关系的例子。
发送消息被解释为一个事件,而不是一个实体,即使它具有属性/属性。这里有两个实体之间的密切联系:用户和用户。 ER 图中概念模型的正确情况是:
注意这里的基数。用户可能已经或可能没有向其他人发送消息。同样,用户可能会也可能不会收到来自其他用户的消息。
一旦将其分解,即一旦对逻辑模型进行分解,就会出现以下情况:
这里的“To”和“From”代表外键。这种类型的模型会在数据库中生成两个表。一个将代表系统的用户。另一个将代表用户之间交换的消息。这里的外键可能会也可能不会作为复合主键。在我看来,我更喜欢使用代理键,但这取决于您。
希望我在某种程度上有所帮助。如果您还有其他问题,请发表评论,我会编辑我的答案,或者我也可以添加评论。
关于database-design - 如何对用户之间交换的消息进行建模? - ER图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35310283/