Download presentation
Presentation is loading. Please wait.
1
CS 3630 Database Design and Implementation
2
Second Normal Form (2NF)
A relation R is in 1NF, and every non-primary-key attribute is fully functionally dependent on the primary key Then R is in 2NF. No Partial FDs on PK. Slides 2-5 copied from Note14 and should be removed after done Could keep all slides here! Enough time to answer all questions!
3
Lease (RNo, RName, PNo, PAddress, Start, Finish, Rent, ONo, OName)
Primary Key: PNo, Start FDs: PNo, Start ---> RNo, RName, PAddress, Finish, Rent, ONo, OName PNo ---> PAddress, ONo, Oname (Partial on PK!) Lease1 (PNo, PAddress, ONo, OName) Primary Key: Pno Alternate Key: None Foreign Key: None PNo ---> PAddress, ONo, OName PAddress Pno ONo ---> OName Lease2 (RNo, RName, PNo, Start, Finish, Rent) Foreign Key: PNo References Lease1 PNo, Start ---> RNo, RName, Finish, Rent RNo ---> RName
4
Better Name for the Two Tables
Lease (RNo, RName, PNo, PAddress, Start, Finish, Rent, ONo, OName) Primary Key: PNo, Start Better Name for the Two Tables Lease1 (PNo, PAddress, ONo, OName) Primary Key: Pno Property Lease2 (RNo, RName, PNo, Start, Finish, Rent) Lease
5
Property (PNo, PAddress, ONo, OName)
Primary Key: PNo FDs: PNo ---> PAddress, ONo, OName PAddress PNo ONo ---> OName Table Instance PNo PAddress ONo OName P main O Tina P main O Tony P first O Tony P first O Tony In 2NF? But still some Redundancy Reason?
6
Third Normal Form (3NF) No Transitive FDs on PK.
Relation R in 2NF, and No non-Primary-Key attribute is transitively functionally dependent on the primary key Then R is in 3NF. No Transitive FDs on PK.
7
Transitive FDs If A B and B C Then A C is always TRUE
(provided A is not functionally dependent on either B or C) (NO cycle!)
8
Transitive FDs A B C If A B and B C Then A C
9
Transitive FDs A B C If A B and B C Then A C
Provided not B A (A and B are equivalent) nor C A (A, B and C are equivalent) No Cycle!
10
Property (PNo, PAddress, ONo, OName) FDs:
Primary Key: PNo FDs: PNo ---> PAddress, ONo, OName PAddress ---> PNo ONo ---> OName Table Instance PNo PAddress ONo OName P main O Tina P main O Tony P first O Tony P first O Tony In 2NF, but still some redundancy Not in 3NF! PNo ---> ONo, Oname Ono --> Oname (Oname is transitively functionally dependent on Pno)
11
Decompose Property into 3NF
Property (PNo, PAddress, ONo, OName) PNo ---> PAddress, ONo, OName PAddress ---> PNo ONo ---> OName Property1 (ONo, OName) Primary Key: Ono Alternate Keys: None Foreign Keys: ? FDs: ONo ---> Oname Property2 (PNo, PAddress, ONo) Primary Key: PNo Alternate Keys: PAddress Foreign Keys: ? FDs: PNo ---> PAddress, ONo PAddress Pno
12
Decompose Property into 3NF
Property (PNo, PAddress, ONo, OName) PNo ---> PAddress, ONo, OName PAddress ---> PNo ONo ---> OName Property1 (ONo, OName) Primary Key: Ono Alternate Keys: None Foreign Keys: None FDs: ONo ---> Oname Better table name? Owner Property2 (PNo, PAddress, ONo) Primary Key: PNo Alternate Keys: PAddress Foreign Keys: Ono references Property1 FDs: PNo ---> PAddress, ONo PAddress Pno Better table name? Property
13
Decompose Property into 3NF
Property (PNo, PAddress, ONo, OName) PNo ---> PAddress, ONo, OName PAddress ---> PNo ONo ---> OName Owner (ONo, OName) Primary Key: Ono Alternate Keys: None Foreign Keys: None FDs: ONo ---> Oname Property (PNo, PAddress, ONo) Primary Key: PNo Alternate Keys: PAddress Foreign Keys: Ono references Owner FDs: PNo ---> PAddress, ONo PAddress Pno
14
Table Instances Property PNo PAddress ONo OName
P main O Tina P main O Tony P first O Tony P first O Tony Property PNo PAddress Ono P main O100 P main O109 P first O109 P first O109 Owner ONo OName O Tina O Tony
15
Final Tables Lease Property Owner
16
Relation R R (A, B, C, D, E, F) Primary Key: A, B Alternate Keys: None Functional Dependencies: A, B ---> C, D, E, F C ---> D E ---> F Is it in 2NF? Is it in 3NF? How many tables we will have to decompose it into 3NF?
17
Exercise 3NF Table Instance A B C D E F 1 x 10 100 se 400
y cis x cis y ct A, B ---> C, D, E, F C > D E > F
18
Decompose R into 3NF R (A, B, C, D, E, F) PK: A, B AK: None FK: None
FDs: A, B ---> C, D, E, F C ---> D E ---> F R3 (A, B, C, E) Primary Key: A, B Alternate Keys: None Foreign Key: C References R1 E References R2 Functional Dependencies: A, B ---> C, E R1 (C, D) Primary Key: C Alternate Keys: None Foreign Key: None Functional Dependencies: C ---> D R2 (E, F) Primary Key: E Alternate Keys: None Foreign Key: None Functional Dependencies: E ---> F
19
Table Instances R (A, B, C, D, E, F) A B C D E F 1 x 10 100 se 400
y cis x cis y ct R (A, B, C, E) A B C E x se y cis x cis y ct R1 (C, D) C D R2 (E, F) E F se cis ct
20
Assignment 5-2 Due Thursday, March 9 Quiz 2 Wednesday, March 8
Schedule Assignment 5-2 Due Thursday, March 9 Quiz 2 Wednesday, March 8
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.