Re: Re-design of data storage table

From: Erland Sommarskog <esquel_at_sommarskog.se>
Date: Thu, 26 Feb 2009 22:32:23 +0000 (UTC)
Message-ID: <Xns9BBEF31CE429CYazorman_at_127.0.0.1>



 (johnbhurley_at_sbcglobal.net) writes:
> A few days of trawling the net is how you decide if your database
> design is correct?
>
> You are complaining that no one else can suggest a better solution
> without paying for consulting by competent database designers?
>
> A bunch of us experienced people are noting that this won't scale more
> as a courtesy than anything else. You get what you pay for eh?
>
> Good luck but keep your resume updated and you may not want this
> project on it.
 

Maybe you don't you this post on your résumé?

If you want to play a database designer, it does help to read want people want.

Paul wants a database where users are able to add their own attributes, and there should be no limits. Notice that Paul is not a new upstart, but he has an existing system, which uses a different model than EAV, and which has the drawback of setting a limits the number attributes there can be. We don't know too many details about Paul's system, but apparently this limitation gives his product a drawback on the market.

Yes, EAV is problematic, but the whole area of customer-defined attributes is problematic. Nevertheless, this is a common requirement in many systems, and the not least if you want to make a product of your application. EAV is probably the best solution for this situation. The fact that EAV can be abused is no reason to throw out the baby with the bathtub.

I have used EAV in a few corners in the system I work with, and I can tell you: it has been a big life-saver.

-- 
Erland Sommarskog, SQL Server MVP, esquel_at_sommarskog.se

Links for SQL Server Books Online:
SQL 2008: http://msdn.microsoft.com/en-us/sqlserver/cc514207.aspx
SQL 2005: http://msdn.microsoft.com/en-us/sqlserver/bb895970.aspx
SQL 2000: http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx
Received on Thu Feb 26 2009 - 16:32:23 CST

Original text of this message