•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the Database Design section within the Web Development category of DaniWeb, a massive community of 426,465 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 2,258 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Database Design advertiser: Programming Forums
Views: 1158 | Replies: 4
![]() |
•
•
Join Date: Jun 2007
Posts: 1
Reputation:
Rep Power: 0
Solved Threads: 0
Hi everyone,
I'm trying to convince my boss that using normalisation is the best way to design a database but he's a hacker rather than a coder and he's taking some convincing.
If we take the typical Staff\Department scenario as an example (where it would be possible for a new member of staff to not yet be assigned to a department, say - (this is similar to a problem we are trying to iron out at the moment)).
My intuition and all the text books I've ever read would say do this:
Staff
StaffId *
Name
Department
DepartmentId *
Name
StaffDepartment
StaffId
DepartmentId
However he would want to do this:
Staff
StaffId *
Name
DepartmentId (Nullable)
Department
DepartmentId *
Name
I can see his point-of-view but still want to do it the normalised way. If I can convince him that the performance of the database is better when normalised then it would sway him, but I'm no expert when it comes to indexes and table scans and the like.
Could somebody please explain if and why a normalised database performs better.
Many thanks in advance.
I'm trying to convince my boss that using normalisation is the best way to design a database but he's a hacker rather than a coder and he's taking some convincing.
If we take the typical Staff\Department scenario as an example (where it would be possible for a new member of staff to not yet be assigned to a department, say - (this is similar to a problem we are trying to iron out at the moment)).
My intuition and all the text books I've ever read would say do this:
Staff
StaffId *
Name
Department
DepartmentId *
Name
StaffDepartment
StaffId
DepartmentId
However he would want to do this:
Staff
StaffId *
Name
DepartmentId (Nullable)
Department
DepartmentId *
Name
I can see his point-of-view but still want to do it the normalised way. If I can convince him that the performance of the database is better when normalised then it would sway him, but I'm no expert when it comes to indexes and table scans and the like.
Could somebody please explain if and why a normalised database performs better.
Many thanks in advance.
•
•
Join Date: Jun 2007
Location: Los Angeles, CA
Posts: 30
Reputation:
Rep Power: 2
Solved Threads: 2
I dont think explaining will help. You are a smart person, and i may suggest a different solution (it does help, if used the right way):
1. Go to your boss' office and say hello to him.
2. Pick a heavy book from his desk.
3. Hit him on the head with it.
In other words, dont waste your time explaining rather simple things.
1. Go to your boss' office and say hello to him.
2. Pick a heavy book from his desk.
3. Hit him on the head with it.
In other words, dont waste your time explaining rather simple things.
******************
15 minutes of research can save you 50% or more. forum.feodorgeorgiev.com
***Need Web Hosting?
******************
15 minutes of research can save you 50% or more. forum.feodorgeorgiev.com
***Need Web Hosting?
******************
•
•
Join Date: Jan 2007
Location: Oxfordshire, England
Posts: 307
Reputation:
Rep Power: 2
Solved Threads: 14
•
•
•
•
Hi everyone,
Staff
StaffId *
Name
Department
DepartmentId *
Name
StaffDepartment
StaffId
DepartmentId
However he would want to do this:
Staff
StaffId *
Name
DepartmentId (Nullable)
Department
DepartmentId *
Name
.
Hi
First off good luck convincing him that you are correct. (You are correct)
Relational databases should contain minimum amout of repeated data for following reasons.
a) Your bosses solution will need more disk space which meabs records take longer to load etc. Try calculating extra disk space required. You know how many records and field length allocated for department.
b) Multiple department entries (your bosses method) will lead to spelling mistakes will lead to bad reporting, etc.
Your method will allow for the department to be entered once. One possible spelling mistake, one place to update, etc.
Your method leads to easier reporting, less errors, less disk space used, quicker running.
Let us know how you get on please.
Denis
•
•
Join Date: Jun 2007
Location: Los Angeles, CA
Posts: 30
Reputation:
Rep Power: 2
Solved Threads: 2
Denis is Absolutely Right. Still, if his method doesn't work, I highly recommend mine.
******************
15 minutes of research can save you 50% or more. forum.feodorgeorgiev.com
***Need Web Hosting?
******************
15 minutes of research can save you 50% or more. forum.feodorgeorgiev.com
***Need Web Hosting?
******************
•
•
Join Date: Oct 2005
Location: Manchester, UK
Posts: 482
Reputation:
Rep Power: 3
Solved Threads: 33
•
•
•
•
I dont think explaining will help. You are a smart person, and i may suggest a different solution (it does help, if used the right way):
1. Go to your boss' office and say hello to him.
2. Pick a heavy book from his desk.
3. Hit him on the head with it.
In other words, dont waste your time explaining rather simple things.
Not any old book will do; please use "A Relational Model of Data for Large Shared Data Banks" by Dr Edgar F Codd.
Note to self... pocket cup
![]() |
•
•
•
•
•
•
•
•
DaniWeb Database Design Marketplace
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
- Writing to an Access Database (Visual Basic 4 / 5 / 6)
- Dynamic web pages? Which will exist? (IT Technologies and Trends)
- How long do you use your computer each day? (Geeks' Lounge)
- Java Server Pages (JSP)
Other Threads in the Database Design Forum
- Previous Thread: Novice Table Relation Question
- Next Thread: 2NF and Multi-candidate Keys


Linear Mode