September 6, 2012 at 4:30 pm
Hello - I think around 10 years ago there was a trend where data model designers were putting table attributes in an attribute table as opposed to defining those attributes as table columns.
I think I read somewhere that Microsoft now recommends against that approach as a bad design and I agree with this assessment.
I'm supposed to attend a JAD design meeting on Monday and I think one of the team members plans to suggest an attributes table approach.
Can you refer me to a url where Microsoft states the correct practice for this so I can pass it along if necessary? Maybe it's on one of their patterns and practices pages?
September 7, 2012 at 11:38 am
bump
September 7, 2012 at 12:49 pm
I don't find any reference from Microsoft. Maybe you could find more if looking for Entity-Attribute-Value model.
There are several threads, the last one was this: http://www.sqlservercentral.com/Forums/Topic1348537-373-1.aspx
It's weird that is part of the Designing Database Solutions for Microsoft SQL Server 2012 Exam (70-465) https://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-465#tab2
I'm not sure if this helps but I hope it helps you to continue your research.
September 7, 2012 at 1:24 pm
Thanks for your feedback Luis. I think that should give me the information I need 🙂
September 7, 2012 at 2:49 pm
sqlguy-736318 (9/6/2012)
Hello - I think around 10 years ago there was a trend where data model designers were putting table attributes in an attribute table as opposed to defining those attributes as table columns.I think I read somewhere that Microsoft now recommends against that approach as a bad design and I agree with this assessment.
I'm supposed to attend a JAD design meeting on Monday and I think one of the team members plans to suggest an attributes table approach.
Here's what I always want to ask the application developers who propose abusing a Database like this:
What, you say that's crazy? You say, that would be slow, result in tons of redundant overhead, be incredibly hard to work with, hard to test and debug, and would effectively be throwing away everything that our development environment product does for us, and we'd end up having to re-invent and re-implement it all by hand anyway?
Well then, let me ask you a second question: What makes you think that it's any different for an application's database?
I really want to be in the room at the right time some day so that I can ask that question! :w00t:
[font="Times New Roman"]-- RBarryYoung[/font], [font="Times New Roman"] (302)375-0451[/font] blog: MovingSQL.com, Twitter: @RBarryYoung[font="Arial Black"]
Proactive Performance Solutions, Inc. [/font][font="Verdana"] "Performance is our middle name."[/font]
Viewing 5 posts - 1 through 4 (of 4 total)
You must be logged in to reply to this topic. Login to reply