Re: Attribute-values in separate table

From: DBMS_Plumber <>
Date: Mon, 29 Oct 2007 11:58:18 -0700
Message-ID: <>

On Oct 26, 5:19 pm, -CELKO- <> wrote:
> Every few months a Newbie re-invented the EAV fallacy and thinks they
> are so clever. A really good horror story about this kind of disaster
> is at:

Started in application development, working on data management in the late 1980s.

Went to work for a RDBMS company in the early 1990s as a consultant.

Ended up working on DBMS development. Got to spend a lot of quality time with annoyed customers.

About twice a year, the EAV data model would crop up. The first few times I took the trouble to try to do the right thing. When it works it's because the application is small and not very business critical.

But it's almost always an utter disaster. Once the data is in the application, it's impossible to get it out again without writing a small-fridge sized (bigger than a bread-box, smaller than a washingmachine)  chunk of code. And even if you can, the data integrity is typically shot. So you really can't migrate to any kind of replacement system.

You know those old-fashioned laundry / washing machines called 'mangles'? Two cylinders and a crank handle? I was once told by an IT manager who worked with such a system that it was like ' ... having your cock caught in a mangle. Sure it hurts to go forward. But it hurts much worse to go back."

Now, when I visit a site or get on a conference call with an unhappy project, two of the first questions I ask are "How many tables do you have?" and "How many columns in your widest table?". If either of those answers was less than 10, I would kinda triage the whole project and write it off as unpossible to fix. Received on Mon Oct 29 2007 - 19:58:18 CET

Original text of this message