Presentation is loading. Please wait.

Presentation is loading. Please wait.

BACS 485 Normalization. Data Anomalies WORKER (WORKER-ID, NAME, SKILL-TYPE, SUPV-ID, BLD-ID) WORKER-IDNAMESKILL-TYPESUPV-IDBLD-ID 1235M. FaradayElectric1311312.

Similar presentations


Presentation on theme: "BACS 485 Normalization. Data Anomalies WORKER (WORKER-ID, NAME, SKILL-TYPE, SUPV-ID, BLD-ID) WORKER-IDNAMESKILL-TYPESUPV-IDBLD-ID 1235M. FaradayElectric1311312."— Presentation transcript:

1 BACS 485 Normalization

2 Data Anomalies WORKER (WORKER-ID, NAME, SKILL-TYPE, SUPV-ID, BLD-ID) WORKER-IDNAMESKILL-TYPESUPV-IDBLD-ID 1235M. FaradayElectric1311312 1235M. FaradayElectric1311515 1412C. NemoPlumbing--312 1412C. NemoPlumbing--460 1412C. NemoPlumbing--435 1412C. NemoPlumbing--515 1311C. CoulombElectric--435

3 Normalization Process

4 0NF ORDERS(ORDER-NUM, ORDER-DATE, {PART-NUM, PART-DESC, QTY-ORD, PRICE}) ORDER- NUM ORDER- DATE PART-NUMPART-DESCQTY- ORD PRICE 1248990295AX12Washer11699 1249190295BT04 AX12 Dryer Washer 1111 450 699 1249490295CB03Sink4150 1249590495CX11Mixer295 1249890595AZ52 BA74 Skates Basketball 2121 169 49

5 1NF ORDERS(ORDER-NUM, ORDER-DATE, PART-NUM, PART-DESC, QTY-ORD, PRICE) ORDER- NUM ORDER- DATE PART- NUM PART-DESCQTY-ORDPRICE 1248990295AX12Washer11699 1249190295BT04Dryer1450 1249190295AX12Washer1699 1249490295CB03Sink4150 1249590495CX11Mixer295 1249890595AZ52Skates2169 1249890595BA74Basketball149

6 1NF ORDERS(ORDER-NUM, ORDER-DATE, PART-NUM, PART-DESC, QTY-ORD, PRICE) ORDER-NUM, PART-NUM ---> QTY-ORD ORDER-NUM ---> ORDER-DATE PART-NUM ---> PART-DESC, PRICE

7 ORDER-NUMORDER-DATE 1248990295 1249190295 1249490295 1249590495 1249890595 PART-NUMPART-DESCPRICE AX12Washer699 BT04Dryer450 CB03Sink150 CX11Mixer95 AZ52Skates169 BA74Basketball49 ORDER-NUMPART-NUMQTY-ORD 12489AX1211 12491BT041 12491AX121 12494CB034 12495CX112 12498AZ522 12498BA741 ORDERS (ORDER-NUM, ORDER-DATE) PART (PART-NUM, PART-DESC, PRICE) ORDER-LINE (ORDER-NUM, PART-NUM, QTY-ORD) 2NF Orders Part Order_Line

8 CUSTOMER (CUST-NUM, CUST-NAME, CUST-ADDR, SALES-NUM, SALES ‑ NAME) 3NF Problems CUST-NUMCUST-NAMECUST-ADDRSALES-NUMSALES- NAME 124S. Adams123 Oak St.3M. Jones 256A. Samuels456 Elm St.6W. Smith 311C. Don48 College Ave.12S. Brown 315T. Daniels519 Cherry St.6W. Smith 405A. Williams16 Watson Rd.12S. Brown Customer CUST-NUM ---> CUST-NAME, CUST-ADDR, SALES-NUM, SALES-NAME SALES-NUM ---> SALES-NAME

9 3NF Problems CUST-NUM ---> CUST-NAME, CUST-ADDR, SALES-NUM, SALES-NAME SALES-NUM ---> SALES-NAME

10 CUST-NUMCUST-NAMECUST-ADDRSALES-NUM 124S. Adams123 Oak St.3 256A. Samuels456 Elm St.6 311C. Don48 College Ave.12 315T. Daniels519 Cherry St.6 405A. Williams16 Watson Rd.12 SALES-NUMSALES-NAME 3M. Jones 6W. Smith 12S. Brown CUSTOMER (CUST-NUM, CUST-NAME, CUST-ADDR, SALES-NUM) SALES-REP (SALES-NUM, SALES-NAME) 3NF

11 NAMEDEPTOFFICERANKDATE- HIRED SmithCISB-20Instructor880101 JonesMUSICM-15Professor650401 HenryMUSICM-13Assist. Professor861005 FrankCHEMC-17Assoc. Professor930615 BC/NF Problem FACULTY (NAME, DEPT, OFFICE, RANK, DATE-HIRED) OFFICE ---> DEPT NAME, DEPT ---> OFFICE, RANK, DATE-HIRED NAME, OFFICE ---> DEPT, RANK, DATE-HIRED

12 OFFICE ---> DEPT NAME, DEPT ---> OFFICE, RANK, DATE-HIRED NAME, OFFICE ---> DEPT, RANK, DATE-HIRED BC/NF Problem

13 BC/NF Solution FAC-LOC (OFFICE, DEPT) FACULTY (NAME, OFFICE, RANK, DATE-HIRED) The NAME,OFFICE candidate key was chosen as the primary key because the NAME,DEPT candidate key would not be in BCNF. In fact, it would not even be in 2NF since there would be a partial dependency between OFFICE and DEPT.

14 FACULTY (FAC-ID, {STU-ID}, {COMMITTEE-CODE}) FAC-IDSTU-IDCOMMITTEE-CODE 12312805 24139 ADV PER HSG 45637573 24139 36237 CUR 44457384HSG 0NF Relation

15 FACULTY (FAC-ID, STU-ID, COMMITTEE-CODE) FAC-IDSTU-IDCOMMITTEE-CODE 12312805ADV 12324139ADV 12312805PER 12324139PER 12312805HSG 12324139HSG 45637573CUR 45624139CUR 45636237CUR 44457384HSG Normalized? FAC-NAME --->> STU-ID FAC-NAME --->> COMMITTEE-CODE

16 FAC-STU (FAC-ID, STU-ID) FAC-COMM (FAC-ID, COMMITTEE-CODE) FAC-IDSTU-ID 12312805 12324139 45637573 45624139 45636237 44457384 FAC-IDCOMMITTEE-CODE 123ADV 123PER 123HSG 456CUR 444HSG 5NF

17 Normalization “Rules” 0NF to 1NF – Remove repeating groups 1NF to 2NF – Remove partial functional dependencies 2NF to 3NF – Remove transitive dependencies 3NF to BC/NF – Every determinate is a candidate key BC/NF to 4NF – Remove multi-valued dependencies 4NF to 5NF – Remove join dependencies DK/NF – Every constraint is a consequence of domain and key constraints


Download ppt "BACS 485 Normalization. Data Anomalies WORKER (WORKER-ID, NAME, SKILL-TYPE, SUPV-ID, BLD-ID) WORKER-IDNAMESKILL-TYPESUPV-IDBLD-ID 1235M. FaradayElectric1311312."

Similar presentations


Ads by Google