6 thoughts on “Which nullability do you believe? #ERwin

  1. Harry April 30, 2013 / 15:39

    After having a quick look at this post, it seems author is confused about null-ability of a column and cardinality of a relationship.

    • George McGeachie April 30, 2013 / 18:05

      Thanks for the comment, Harry. Please take a detailed look, and you’ll see that I don’t mention cardinality at all. I circled the parent end of relationships to highlight the nullability.

  2. Harry August 24, 2013 / 09:27

    George, ok got it!
    Based on my testing, what’s shown in diagram accurately reflects the OPTIONALITY of relationship (what you see in relationship editor).
    If you want to make the relationship OPTIONAL and have the child columns semantically in sync with relationship, I recommend you to change the OPTIONALITY of relationship instead of over-riding NULLABILITY of child column(s).

    This behavior has an obvious merit that I can document a relationship semantically mandatory although I may have to relax the NULLABILITY of child columns for practical reasons.

    • George McGeachie September 4, 2013 / 22:36

      Hello Harry

      I would never want the relationship and FK column optionality to differ within a model – the columns will be mandatory or optional because the relationship is mandatory or optional. If the relationship is semantically mandatory but physically optional, then I expect the relationship to be mandatory in the LDM and optional in the PDM. ERwin users will realise that this is impossible to show in one ERwin data model, as there is only one model – the Logical and Physical views are exactly that, different views of the metadata for different audiences, not different models. This is one of a several reasons why I could never recommend buying ERwin.


      • Harry September 8, 2013 / 06:56

        Hello George, Appreciate your response!
        I still believe column NULL-ability should not dictate the relationship optionality either on LDM or PDM.
        How do you see the situation if the relationship had multiple columns?

  3. Harry September 28, 2013 / 08:55


    Difficult to digest some of your thinking especially when you say “If the relationship is semantically mandatory but physically optional, then I expect the relationship to be mandatory in the LDM and optional in the PDM”.

    When we say relationship is semantically mandatory, “relationship is mandatory”. It is not optional either logically or physically.

    Let column NULL ability complement/support relationship optionality but not dictate.
    NULL-ability of a column that refers another column cannot be the final word to call relationship optional/mandatory.

    About tools behavior, when I make a relationship mandatory it should automatically change the child column to NOT NULL. But if you want to change the column back to NULL explicitly, that can be allowed. No big deal!!!

    1) Practically its just about having columns that must have value but don’t enforce me to INSERT in the first go.
    2) Relationship to composite KEYS where one column is OPTIONAL.


Leave a Reply