What's the difference between identifying and non-identifying relationships?

前端 未结 15 1856
迷失自我
迷失自我 2020-11-22 12:02

I haven\'t been able to fully grasp the differences. Can you describe both concepts and use real world examples?

15条回答
  •  借酒劲吻你
    2020-11-22 12:11

    Do attributes migrated from parent to child help identify1 the child?

    • If yes: the identification-dependence exists, the relationship is identifying and the child entity is "weak".
    • If not: the identification-dependence doesn't exists, the relationship is non-identifying and the child entity "strong".

    Note that identification-dependence implies existence-dependence, but not the other way around. Every non-NULL FK means a child cannot exist without parent, but that alone doesn't make the relationship identifying.

    For more on this (and some examples), take a look at the "Identifying Relationships" section of the ERwin Methods Guide.

    P.S. I realize I'm (extremely) late to the party, but I feel other answers are either not entirely accurate (defining it in terms of existence-dependence instead of identification-dependence), or somewhat meandering. Hopefully this answer provides more clarity...


    1 The child's FK is a part of child's PRIMARY KEY or (non-NULL) UNIQUE constraint.

提交回复
热议问题