I am doing my term Project and I need to create a Performance Evaluation System.Manager can create new projects and assign tasks to developers.Each developer when work on project manager can see the working Hours of developer and project Completion. Now I am confused should I add new tables for each developer and Manager or I should add rows in same tables.Please tell which will be a good design and how I can do this Efficiently.
Forget about normalization etc for a moment. It is actually just common sense.
(1) add new table for each developer or manager.
- Who is going to create the table(s) ? User or your application ?
- What if you have more than 1000 developer, You will 1000 tables ?
- How are going to name the tables ? developer1, developer2, developer3 etc ?
(2) add rows in same tables
- now new tables require when you add developer.
- only need to add row(s)
So which one make more sense to you ? (1) or (2)
just in case not obvious to the O/P for this:
KHTan meant "no new tables required when you add developer"
thanks Kristen, my brain and fingers are not in sync these days.
Don't forget about normalization at all. Indeed, normalization is the only thing that will get you to the right answers for the overall design, not just this first little step.
Start with a logical data design, not physical. That means you define entities (NOT tables yet). DO NOT TRY TO SHORT-CUT THE LOGICAL DESIGN PROCESS (that is don't jump to tables too quickly).
As to how to do that, there are many, many online tutorials for logical design. Or check Amazon and get a good practical book or two on how to do it.