【问题标题】:Nulls and ERDs. Where does the Null go?空值和 ERD。 Null 去哪儿了?
【发布时间】:2020-06-03 18:39:55
【问题描述】:

我对这种简单的关系感到困惑。

我在这里想说的是,每个成员在 Marketing Target 中只能有 一行,但是,外键 - MemberID - 必须设置为 Null,因为我在之后保存数据删除会员详细信息。

请不要说我不是在询问代码,而是询问我应该将 Null 放在图中的哪个位置。

我拥有的位置是否正确,或者应该放在市场营销旁边吗?

谢谢!

【问题讨论】:

  • “外键 - MemberID - 必须设置为 Null,因为我在删除成员详细信息后保存数据。”没有任何意义。如果您可以在MarketingTarget 中有一条记录,而在MemberDetails 中没有相应的(相同的MemberID)记录,那么您就没有外键关系。请解释在MarketingTarget 中有记录意味着什么。
  • 意思是当我从Member Details中删除数据时,FK设置为​​Null,并且没有删除Marketing Target记录。删除会员详细信息后,我需要保留此记录。这是一个要求。我写的代码工作得很好,但我对在 ERD 中添加 NULL 的位置感到困惑。
  • 请通过编辑而不是评论来澄清。 PS你有一本教科书/参考书。跟随它,不要要求我们重写它。另外,你的其他研究表明了什么? How to Ask help center PS 把文字作为文字放在你的帖子里,这里是图片的所有内容,并用图片给出一个图例。

标签: sql-server database null relational-database diagram


【解决方案1】:

你的外键弄错了。

您应该将MemberDetails.MTid 链接到“MarketingTarget”表,而不是MarketingTarget.MemberID

作为一般规则,您始终将外键添加到关系的“多”或 0 侧。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-03
    • 2014-03-15
    • 2015-07-17
    • 2012-10-30
    • 2013-05-23
    • 1970-01-01
    • 2012-03-13
    • 1970-01-01
    相关资源
    最近更新 更多