请您解释一下两者之间的区别
零比一,零比多基数
和
识别,不识别
与一些例子的关系?
据我了解,零对一关系是 Bar 实体具有 Foo 的外键但可以将键设置为 NULL ,因此在实践中,您可以创建 Bar 并通过其键链接到 Foo ,或将此链接设置为 NULL ,以便有一个 Bar ,但 Bar 中的 Foo 可能根本不存在。 >透视图 Foo的存在或其链接是可选的。
一对一关系是指 Bar 和 Foo 之间的链接不是可选的。因此,如果要创建 Bar 实体,则需要在 Bar 中提供 Foo 的密钥,以创建链接。在实践中,这意味着您需要先创建 Foo ,然后创建 Bar ,因为每个 Bar 必须链接到一个 Foo >。
目的识别/不识别是什么?
如果识别是在没有 Foo 的情况下不存在的栏。与儿童-父母关系相似。没有父母,孩子就不能存在。但这对我来说非常接近一对一关系。
无法识别是指酒吧可以不存在 Foo 的情况。与我一样,零比一
我的研究表明,一对一和一对一之间的全部差异归结为 Foo 的外键是否可以是否在 Bar 中设置为 NULL 。 识别与未识别是相似的,但问题是 Bar 上的 Foo's 键是否是< strong> Bar的 PRIMARY 键(区分大小写)(不是)(区分大小写)。
因为将键设置为 PRIMARY ,意味着其值是 NOT NULL 和 UNIQUE 。有一种情况无法实现:
零比一或零比多并识别同时
您同意吗?
您能否举一个说明差异的真实示例:
a)一对一与识别
b)零对一与无法识别
c)一对一与无法识别
d)零对一与识别
因此,我更好地了解了何时使用(非)识别以及何时(零/一)与(一/多)的关系?对它有一些感觉,但不想坚持我的感觉:)