The world’s Largest Sharp Brain Virtual Experts Marketplace Just a click Away
Levels Tought:
Elementary,Middle School,High School,College,University,PHD
| Teaching Since: | Jul 2017 |
| Last Sign in: | 314 Weeks Ago |
| Questions Answered: | 15833 |
| Tutorials Posted: | 15827 |
MBA,PHD, Juris Doctor
Strayer,Devery,Harvard University
Mar-1995 - Mar-2002
Manager Planning
WalMart
Mar-2001 - Feb-2009
I need to make sure that this is correct. And that I am on the right track.
Normalization is a method for organizing data elements in a database into tables.
Â
Normalization Avoids
Â
Normalization is normally a three stage process; first normal form, second normal form and third normal form.
1.     Have the list of all fields you want to put in a database. Think of this as one big table.
2.     Computed fields are not included in the fields above.
3.     Any other additional attribute can be added to the field.
See Sales Order from below:
Government
Â
|
Account_id |
Account_name |
Date |
TransactionID |
TransactionType |
Â
Â
Â
FinancialFirms
|
TransactionID |
Customer_id |
Price |
Item |
Customer_name |
Â
 Customer Table
|
Customer_id, |
payment_method_code |
customer_name |
date_of_birth |
Â
In this example the fields in the table will be as follows;
The table would be described as follows:
Customers (Customer_id, payment_method_code, customer_name, date_of_birth)
Government(Account_id, Account_name, date, transaction_id, transaction_type)
FinancialFirms (TransactionID, customerID, Price, item_sold_name, customer_name)
Â
You can treat this as a base table.
The new table is as follows:
Customers (Customer_id, payment_method_code, customer_name, date_of_birth)
Government(Account_id, Account_name, date, transaction_id, transaction_type)
FinancialFirms (TransactionID, customerID, Price, item_sold_name, customer_name)
Â
Remaining fields will be as follows;
project(num, name)
employee(num, name, job_class, hourly_rate)
The tables would be as follows
Project Table
Â
|
proj_num |
Proj_name, |
Â
|
Emp_num |
Emp_name |
Job_class |
chrg_hour, |
Â
The two tables represent a foirst normal form of the tables.
When the tables are put in the second normal form, duplication of data is avoided and from the above, customer_name is almost in every table. When this is taken care of, the data would be as follows;
Â
Customers (Customer_id, payment_method_code, customer_name, date_of_birth)
Government (Account_id, Account_name, date, transaction_id, transaction_type)
FinancialFirms (TransactionID, customerID, Price, item_sold_name)
Â
Note that there is no customer name in the financialFirms but there is customer ID therefore reducing multiplicity of dublicate data.
Â
The new tables would be:
project(proj_num, Proj_name)
employee(Emp_num, Emp_name, Job_class, chrg_hour,)
job(proj_num, Emp_num, hours)
Â
Â
The final Table would be as follows;
Â
Customers (Customer_id, customer_name, date_of_birth)
GovernmentTransaction (Date, transaction_id, payment_method_code, transaction_type)
FinancialFirms (TransactionID, customerID, Price, item_sold_name)
Account (AccountCode, name)
Â
----------- Â ----------- H-----------ell-----------o S-----------ir/-----------Mad-----------am ----------- Th-----------ank----------- yo-----------u f-----------or -----------you-----------r i-----------nte-----------res-----------t a-----------nd -----------buy-----------ing----------- my----------- po-----------ste-----------d s-----------olu-----------tio-----------n. -----------Ple-----------ase----------- pi-----------ng -----------me -----------on -----------cha-----------t I----------- am----------- on-----------lin-----------e o-----------r i-----------nbo-----------x m-----------e a----------- me-----------ssa-----------ge -----------I w-----------ill----------- be----------- qu-----------ick-----------ly