0% found this document useful (0 votes)
17 views6 pages

Normalization

The document outlines the normalization process for database tables, confirming that they meet the requirements for 4th Normal Form through checks for 1NF, 2NF, 3NF, BCNF, and 4NF. It details the decomposition of several tables, including PRODUCT and ORDER, to eliminate redundancy and improve structure. Additionally, it provides updated table schemas and relationships among various entities in the database.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views6 pages

Normalization

The document outlines the normalization process for database tables, confirming that they meet the requirements for 4th Normal Form through checks for 1NF, 2NF, 3NF, BCNF, and 4NF. It details the decomposition of several tables, including PRODUCT and ORDER, to eliminate redundancy and improve structure. Additionally, it provides updated table schemas and relationships among various entities in the database.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

• Entity Relational Diagram:

• Normalization Process:
- Dependency Diagram:
Before going through the normalization process, we need to draw the dependency diagrams for

our tables, in order to properly identify and evaluate the dependencies for each one.
- Normalization Process :
We can verify that our tables adhere to the various standards for each of the standard
forms as part of the review process of our various tables, made possible by the dependency
diagrams we have created.

• 1NF Check:
We have all possible candidate keys that determine our non-prime attributes, and we have tabular
format tables without any repeating groupings.
• 2NF Check:
Our tables are in 1NF, and they do not contain any partial dependencies.
• 3NF Check:
Our tables are in 2NF, and they do not contain any transitive dependencies.
• BCNF Check:
Our tables are in 3NF, and all determinants are candidate keys.
• 4NF Check:
Our tables are in BCNF, and they do not contain any multivalued dependencies.
–> Our tables meet all the requirements, and thus they are all in 4th Normal Form.

- Additional Normalization Steps:


1. Decompose PRODUCT Table:
The attributes PRO_UNIT, PRO_PRICE, PRO_DETAILS, PRO_STATUS depend only on
PRO_ID.
We created a new table, let's call it PRODUCT_DETAILS, with attributes PRO_ID (Primary
Key) and PRO_UNIT, PRO_PRICE, PRO_DETAILS, PRO_STATUS.
2. Decompose ORDER Table:
Redundancy may result from the property ORDER_DETAILS, which appears to reflect
order-related information.
We created a new table, let's call it ORDER_DETAILS, with attributes ORDERD_ID
(Primary Key), ORDER_DETAILS, and possibly other relevant details.
3. Decompose SERVICE and INVOICE Tables:
If these tables share common attributes, consider creating a new table, let's call it
SERVICE_INVOICE_DETAILS, with shared attributes.

- Updated Tables:
o JOB Table:
JOB_ID (Primary Key, INT)
JOB_NAME (VARCHAR)
JOB_DESCRIPTION (VARCHAR)
o SUPPLIER Table:
SUP_ID (Primary Key, INT)
SUP_NAME (VARCHAR)
SUP_ADDRESS (VARCHAR)
SUP_PHONE
SUP_FAX
SUP_EMAIL
SUP_DETAILS
o CATEGORY Table:
CAT_ID (Primary Key, INT)
CAT_DESCRIPTION (VARCHAR)
CAT_NAME (VARCHAR)
o PAYMENT Table:
PAY_NUM (Primary Key, INT)
PAY_TYPE (VARCHAR)
PAY_DETAILS (VARCHAR)
o STAFF Table:
STAFF_ID (Primary Key, INT)
STAFF_FNAME (VARCHAR)
STAFF_LNAME (VARCHAR)
STAFF_ADDRESS (VARCHAR)
STAFF_PHONE (VARCHAR)
STAFF_EMAIL (VARCHAR)
STAFF_USERNAME (VARCHAR)
STAFF_PASSWORD (VARCHAR)
JOB_ID (Foreign Key references JOB.JOB_ID)
o PRODUCT Table:
PRO_ID (Primary Key, INT)
PRO_NAME (VARCHAR)
PRO_QNT (INT)
PRO_DESCRIPTION (VARCHAR)
SUP_ID (Foreign Key references SUPPLIER.SUP_ID)
CAT_ID (Foreign Key references CATEGORY.CAT_ID)
o PRODUCT_DETAILS Table:
PRO_ID (Primary Key, INT)
PRO_UNIT (VARCHAR)
PRO_PRICE (DECIMAL)
PRO_DETAILS (VARCHAR)
PRO_STATUS (VARCHAR)
o ORDER Table:
ORDER_ID (Primary Key, INT)
ORDER_DATE (DATE)
CUS_ID (Foreign Key references CUSTOMER.CUS_ID)
ORDER_DETAILS Table:
ORDERD_ID (Primary Key, INT)
ORDER_DETAILS (VARCHAR)
o CUSTOMER Table:
CUS_ID (Primary Key, INT)
CUS_FNAME (VARCHAR)
CUS_LNAME (VARCHAR)
CUS_ADDRESS (VARCHAR)
CUS_PHONE (VARCHAR)
CUS_EMAIL (VARCHAR)
STAFF_ID (Foreign Key references STAFF.STAFF_ID)
- Relationships:
JOB to STAFF (1:M)
STAFF to CUSTOMER (1:M)
ORDER to ORDER DETAILS (1:M)
PAYMENT to ORDER DETAILS (1:M)
PRODUCT to ORDER DETAILS (1:M)
SUPPLIER to PRODUCT (1:M)
CATEGORY to PRODUCT (1:M)

- Updated ERD:

You might also like