Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 General SQL Server Forums
 Database Design and Application Architecture
 Advice on relationship design...

Author  Topic 

cidr2
Starting Member

28 Posts

Posted - 2008-10-30 : 12:22:56
Hi folks,

I want to ask advice about the database I’m developing.

The database is for a company who report on 4 different projects each year. Each project has 7 milestones i.e. a 7 step process. Each milestone has 6 fields, dates, comments etc. They all have to be filled out.

If I add up all the fields for each project, there are 63 fields in total. If there wasn’t so many I would put all of the milestones and fields in one table:

Field: milestone A1
Field: Date A1
Field: Comment A1 ……….etc

Field: milestone B1
Field: Date B1 ………etc
(Each project’s 7 milestones are named differently and the “milestone” field would be the ID from a lookup table which would have the name of the milestone)

This will include the Project ID from the Project table that lists the 4 projects etc.

My question is, there are a lot of fields here and technically I can put all of this information into one table, however, I’ve never used so many fields in one table and I’m contemplating the idea of having details of each milestone in its own table, meaning 7 tables with 6 fields each.


I’d like to know anyone’s view on this and thank you in advance for any feed back.

Thanks.

cvraghu
Posting Yak Master

187 Posts

Posted - 2008-10-31 : 00:18:54
I think it would be better to have Project table, Milestones table and ProjectMilestones table with ProjectID, MileStoneID, Year and the 6 attributes of milestone.
Go to Top of Page

visakh16
Very Important crosS Applying yaK Herder

52326 Posts

Posted - 2008-11-02 : 11:11:44
what if number of steps(milestones) increases? i was just thinking if it would be better to keep just a single table with a generic column milestone along with date,comments,ProjectID. each record will represent a step or milestone in project (you could also keep a stepid/milestoneid to denote the step sequence).
Go to Top of Page
   

- Advertisement -