submit to reddit

About Bert Scalzo

Bert is an independent Oracle ACE, author, speaker, consultant, and a major contributor for many popular database tools used by millions of people worldwide. He has over 30 years of Oracle database experience and previously worked for both Oracle Education and Oracle Consulting. He holds several Oracle Masters certifications, a BS, MS and Ph.D. in computer science, as well as an MBA. Plus he has earned several insurance industry designations. Bert has also presented at numerous Oracle events, including OOW, IOUG, OAUG, ODTUG, HOTSOS, RMOUG, DOUG and has done numerous webcasts, expert panels and blogs over the years.

  • Mark Morris

    IMHO, these techniques are too tightly coupled to business rules. The data model should be abstracted from the rules. Tightly coupling business requirements and rules this far downstream has a host of consequences. The constraints and triggers alone negate any noted performance benefits. Keys should definitely NOT enforce business rules, but instead used as a pointer to define the natural relationships of things to one another. I disagree with the application developers needing to understand all the rules. This sounds like architectural issues elsewhere. UI validations, and server centric rule engines centralise for upstream consumption. A DB shouldn’t be the gatekeeper. It leads to the unfortunate belief that relational databases can’t scale. Both from a responsive to change and high volume throughout perspective.

  • Ian Bennett

    Your Person entity is not in 3NF. Location is an entity in its own right (although rarely modelled that way). Person -> Location does NOT mean Location -> Person (as there may be more than 1 Person at an address. Therefore reference to City, State, Zip etc are transitive dependencies. A classic reason behind data quality issues faced when trying to do things like household analytics.

We use technologies such as cookies to understand how you use our site and to provide a better user experience. This includes personalizing content, using analytics and improving site operations. We may share your information about your use of our site with third parties in accordance with our Privacy Policy. You can change your cookie settings as described here at any time, but parts of our site may not function correctly without them. By continuing to use our site, you agree that we can save cookies on your device, unless you have disabled cookies.
I Accept