Click here to Skip to main content
15,892,643 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
QuestionSHBrowseForFolder not working in wince 5.0(x86) processor Pin
joemittu19-Mar-07 1:44
joemittu19-Mar-07 1:44 
AnswerRe: SHBrowseForFolder not working in wince 5.0(x86) processor Pin
Pete O'Hanlon19-Mar-07 10:12
mvePete O'Hanlon19-Mar-07 10:12 
QuestionArchitectural question Pin
dmitryp11-Mar-07 9:54
dmitryp11-Mar-07 9:54 
GeneralRe: Architectural question Pin
Paul Conrad23-Dec-07 8:19
professionalPaul Conrad23-Dec-07 8:19 
Questionhi.. Pin
colinfurtado11-Mar-07 6:52
colinfurtado11-Mar-07 6:52 
AnswerRe: hi.. Pin
Dmitry Khudorozhkov12-Mar-07 5:47
Dmitry Khudorozhkov12-Mar-07 5:47 
QuestionDatabase design suggestions/feedback/pointers wanted Pin
Alsvha11-Mar-07 1:45
Alsvha11-Mar-07 1:45 
AnswerRe: Database design suggestions/feedback/pointers wanted Pin
#12311-Mar-07 10:59
#12311-Mar-07 10:59 
It seems you've got a handle on the three basic alternatives:

(1) A single table with all the attributes, many of the columns containing nulls in many of the rows.

(2) A single table with the common attributes and additional, separate tables for attributes specific to each product (or product type).

(3) A single table with the common attributes and an additional table keyed by product and attribute type with attribute value in a third non-key column.

The fact that you're having trouble deciding between these means that your application would probably benefit from a carefully crafted combination of the three. So, assuming you can't break the whole application into separate and consistent "subsystems", I would recommend that you:

Push as much as you can into option (1) - even if some nulls result. For many of the products, this may be all that is necessary, resulting in a simple and easy-to-query database of "basic" products; then

Add some option (2) tables for those products that are unique enough to warrant them - products with well-defined attributes that are likely to be queried. To minimize the number of addtional tables, allow yourself some nulls in the new tables as well. Finally,

Use option (3) for descriptive attributes that are less likely to be queried but are necessary primarily for display purposes.

Don't fall into the typical designer's trap that says a single storage paradigm is appropriate in all cases; this simply isn't true. A typical product catalog will contain items with descriptions only, some with descriptions and a table of measurements, some with descriptions, measurements, and special shipping instructions, etc. Think of how you would present the information on paper, and your thinking will clear up. A good carpenter will use a hammer here, a screwdriver there, and a chisel somewhere else - all on the same job.


GeneralRe: Database design suggestions/feedback/pointers wanted Pin
Alsvha11-Mar-07 21:27
Alsvha11-Mar-07 21:27 
GeneralRe: Database design suggestions/feedback/pointers wanted Pin
#12311-Mar-07 22:37
#12311-Mar-07 22:37 
GeneralRe: Database design suggestions/feedback/pointers wanted Pin
Alsvha11-Mar-07 23:02
Alsvha11-Mar-07 23:02 
GeneralRe: Database design suggestions/feedback/pointers wanted Pin
#12311-Mar-07 23:12
#12311-Mar-07 23:12 
GeneralRe: Database design suggestions/feedback/pointers wanted Pin
Alsvha11-Mar-07 22:28
Alsvha11-Mar-07 22:28 
QuestionStore an encryption key Pin
Nyarlatotep8-Mar-07 8:41
Nyarlatotep8-Mar-07 8:41 
AnswerRe: Store an encryption key Pin
Marcus J. Smith8-Mar-07 9:00
professionalMarcus J. Smith8-Mar-07 9:00 
GeneralRe: Store an encryption key Pin
Nyarlatotep8-Mar-07 9:06
Nyarlatotep8-Mar-07 9:06 
GeneralRe: Store an encryption key Pin
Marcus J. Smith9-Mar-07 2:50
professionalMarcus J. Smith9-Mar-07 2:50 
GeneralRe: Store an encryption key Pin
Nyarlatotep9-Mar-07 3:02
Nyarlatotep9-Mar-07 3:02 
Questionhow to design a "setting" module in a software? Pin
mehdinasseri8-Mar-07 1:23
mehdinasseri8-Mar-07 1:23 
AnswerRe: how to design a "setting" module in a software? Pin
Maximilien8-Mar-07 1:47
Maximilien8-Mar-07 1:47 
GeneralRe: how to design a "setting" module in a software? Pin
led mike8-Mar-07 6:47
led mike8-Mar-07 6:47 
AnswerRe: how to design a "setting" module in a software? Pin
Code_Doctor16-Apr-07 17:29
Code_Doctor16-Apr-07 17:29 
QuestionOLAP Design Pin
xfitr22-Mar-07 6:05
xfitr22-Mar-07 6:05 
AnswerRe: OLAP Design Pin
Pete O'Hanlon2-Mar-07 8:52
mvePete O'Hanlon2-Mar-07 8:52 
GeneralRe: OLAP Design Pin
xfitr26-Mar-07 5:38
xfitr26-Mar-07 5:38 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.