Sunday, November 5, 2017

This Week

1. Database Truth of the Week

"Logical (aka. syntactic) validity: Every logical inference (application of any number of rules of inference) from syntactically valid and well-formed premises yields well-formed and syntactically valid consequents (i.e., the rules of inference preserve syntactic validity and well-formedness.) This property is independent of any interpretations of the symbols. A query result is said to be logically valid iff it is derived by any sequence of RA operations on one or more relations.

"Semantic correctness: Every interpretation of the symbols (meaning and truth value assignment) that makes the axioms true, makes the theorems true. When we extend a logical model with semantics (specific to the subject matter and its "business" rules) via constraints, those constraints become axioms that must be true. A query result is said to be semantically correct iff for every assignment of meaning to relations that are the RA operands under which their tuples represent true facts, the tuples of the result relations also represent true facts.
If relations are not in 5NF, query results aren’t guaranteed to be semantically correct. Any update anomaly can appear in a result -- a join might deliver extra tuples that are anomalous. A database design that permits update anomalies does not preserve semantic correctness!" --David McGoveran

2. What's Wrong With This Database Picture?

"If we take a RDB as the ultimate target implementation of data, and an ERM (or extended) can correctly design all the artifacts that are implemented, this means it is modelling the data. Granted, an ERM does not explicitly model some of the non-structural aspects of the original Codd definition.

"ERM is a data model -- So says Date, Chen, etc. So says the majority of current industry experts. Refer to Date 6th edition p347. With very strong references to Codd (who he worked with), Date elegantly explains the differences between RM and ERM – but clearly believes both are data models (even allowing for the charitable comment).

Out of interest, is there a common Relational Modelling tool, that is not also an ERM tool and models the full Codd definition? There are also several other methods of modeling data -- ERM is more a mechanism to represent the data. If ERMs are used by IT professionals across the world to direct the design and build of the majority of applications guided by standard methodologies, is the view of this argument that these were all build wrongly? Regardless of success? Is the inferred conclusion that only the RM models data, and ERM, [or] any other techniques do not? [If so] that is a little limiting."

3. To Laugh or Cry?

"One of the things i dislike about SQL is the requirement by vendors to not allow NULLs on a PRIMARY KEY. This is so annoying when the PK is one of two COLUMNs."
"I think in this case the logical meaning of NULL is not that the value is "unknown", it is "the value is known not to exist". So eg a PK of (1,NULL) is definitely unique as compared to (2,NULL), and it is known in the specific problem domain/scenario that there can never be two records (1, NULL) and (1, NULL). Is the solution to represent NULL as eg 0 or as an empty string (or eg just a space in oracle, where zero length strings are evaluated as NULLs anyway)?" --Composite PRIMARY KEY when one of the COLUMNS can be NULL (read the whole exchange).

4. Housekeeping

  • I have overhauled the ABOUT page. It now includes a more detailed description of the purpose and content of DBDebunk and how the site works. Deserving attention are:
- The change to debunking posts;
- The integration of the new FUNDAMENTALS page with posts and labels;
coming in 2018. They will bring the site closer to its objective and help speed up revision of the pre-2018 posts (to bring them into line with the McGoveran interpretation of Codd's RDM) and the implementation of a new label scheme; and will help produce a forthcoming DESK DICTIONARY OF DATA FUNDAMENTALS to be published sometime in the future. Please check the page out and let me know what you think.
  • I have deleted the RECOMMENDED BOOKS page and added them at the bottom of the BOOKS page, after the ordering instructions for my books (scroll down).

5. Publications

6. Oldie but Goody

The Future of DBMS -- Part 2

7. Of General Interest

And Now for Something Completely Different

My Take

To the question
"I am a current high school senior who intends to go into the software industry. I'm trying to decide between enrolling in college to pursue a BS in Computer Science or entering directly into the workforce." --Should I attend college?
most answered, predictably, "take the money". I argued that education is not job training, but the development of intellect, independent and critical thinking and humanization -- precisely what controlling, oppressive corporations want to prevent. My comments were, also, predictably, deleted. Here is the predictable consequence of substituting coding for education:
"As a cast member on a show about tech, our job entails visiting tech companies/conferences etc. We meet ppl eager to show off new tech. Often we’ll see tech that is scary. I don’t mean weapons etc. I mean altering video, tech that violates privacy, stuff w obv ethical issues. And we’ll bring up our concerns to them. We are realizing that ZERO consideration seems to be given to the ethical implications of tech. They don’t even have a pat rehearsed answer. They are shocked at being asked." --‘Silicon Valley’ star scared of what he sees as tech’s ethical failings

The Dystopian Internal Collapse and External Demise of Western Civilization

Note: I will not publish or respond to anonymous comments. If you want to say something, stand behind it. Otherwise don't bother, it'll be ignored.

Do you like this post? Please link back to this article by copying one of the codes below.

URL: HTML link code: BB (forum) link code:


  1. "ERM is a data model -- So says Date, Chen, etc. So says the majority of current industry experts. Refer to Date 6th edition p347"

    8th edition, p. 426 : "it is not even clear that the E/R "model" is truly a data model at all, at least in the sense in which we have been using that term in this book so far (i.e. as a ***formal*** system involving structural, ***integrity and manipulative*** aspects)".

    And I seriously doubt he has ever been saying anything fundamentally different, including in earlier editions. Of course some might miss the understatement in "it is not even clear".

    1. Well, later in the comment he sort of calls it a data model, although a limited one.

      Actually, as you shall see, I don't agree "it is not clear" -- it is quite clear.