Presentation is loading. Please wait.

Presentation is loading. Please wait.

Assignment#5 Normalization.

Similar presentations


Presentation on theme: "Assignment#5 Normalization."— Presentation transcript:

1 Assignment#5 Normalization

2 Q1 Identify the functional dependencies.
Describe and illustrate the process of normalization to produce 3NF relations. Identify the primary, alternate, and foreign keys in your 3NF relations.

3 UNF: -Because there is a repeating group  ( DrugNumber, DrugName, Description, Dosage, MethodOfAdmin, UnitPerDay, StartDate, FinishDate ) -The intersection of each row and columns might contain more than ONE value. R = ( FullName, PatientNumber, BedNumber, WardNumber, WardName, { DrugNumber, DrugName, Description, Dosage, MethodOfAdmin, {UnitPerDay, StartDate, FinishDate} }) 1NF: -Remove the repeating group using Approach#1 - expanding the key Patient_Medication ( FullName, PatientNumber, BedNumber, WardNumber, WardName, DrugNumber, DrugName, Description, Dosage, MethodofAdmin, UnitPerDay, StartDate, FinishDate )

4 Patient_Medication ( FullName, PatientNumber, BedNumber, WardNumber, WardName, DrugNumber, DrugName, Description, Dosage, MethodofAdmin, UnitPerDay, StartDate, FinishDate ) 2NF: PatientNumberfullName Partial Dependency WardNumberWardName Transitive Dependency DrugNumber  name , Description, Dosage, MethodOfAdmin Partial Dependency PateintNumber ,DrugNumber, startDate WardNumber, BedNumber, UnitPerDay, FinishDate PatientNumber,WardNumber,starDateBedNumber 2NF : FD1 & FD3 violate 3NF- Transitive dependency Patient (PatientNumber,fullName) Drug (DrugNumber , name , Description, Dosage, MethodOfAdmin ) Patient_Medication ( PateintNumber ,DrugNumber, startDate ,WardNumber, WardName, BedNumber, UnitPerDay, FinishDate)

5 Patient (PatientNumber,fullName)
Drug (DrugNumber , name , Description,Dosage,MethodOfAdmin ) Patient_Medication ( PateintNumber ,DrugNumber, startDate , WardNumber, WardName, BedNumber, UnitPerDay, FinishDate) 3NF: PatientNumberfullName WardNumberWardName Transitive Dependency DrugNumber  name , Description , Dosage, MethodOfAdmin PateintNumber ,DrugNumber, startDateWardNumber, BedNumber, UnitPerDay, FinishDate PatientNumber,WardNumber,starDateBedNumber 3NF : FD2 violates 3NF- Transitive dependency Patient (PatientNumber,fullName) Drug (DrugNumber , name , Description , Dosage, MethodOfAdmin ) Patient_Medication ( PateintNumber ,DrugNumber, startDate , WardNumber, BedNumber, UnitPerDay, FinishDate) Ward(WardNumber,WardName)

6 Patient (PatientNumber,fullName)
Drug (DrugNumber , name , Description,Dosage,MethodOfAdmin ) Patient_Medication ( PateintNumber ,DrugNumber, startDate , WardNumber, BedNumber, UnitPerDay, FinishDate) Ward(WardNumber,WardName) BCNF(not required in the Question) PatientNumberfullName WardNumberWardName DrugNumber  name , Description , Dosage, MethodOfAdmin PateintNumber ,DrugNumber, startDate WardNumber, BedNumber, UnitPerDay, FinishDate PatientNumber,WardNumber,starDateBedNumber BCNF : FD5 violates BCNF Patient (PatientNumber,fullName) Drug (DrugNumber , name , Description , Dosage, MethodOfAdmin ) Patient_Medication ( PateintNumber ,DrugNumber, startDate , WardNumber, UnitPerDay, FinishDate) Ward(WardNumber,WardName) Patient_Bed(PatientNumber,WardNumber,starDate,BedNumber)

7 Q2 Consider the following relation:
R=(CourseNo, SectionNo, OfferingDept, Credit-Hours, CourseLevel, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents) Suppose the following FDs hold on R: CourseNo → OfferingDept, CreditHours, CourseLevel CourseNo, SectionNo, Semester, year → Days_Hours, RoomNo, NoofStudents, InstructorSSN RoomNo, Days_Hours, Semester, Year → InstructorSSN, CourseNo, SectionNo -According to the given FDs and CK selection rules, the PK should be (CourseNo, SectionNo, Semester, year ). To check for 2NF the primary key needs to be defined. R(CourseNo, SectionNo, OfferingDept, Credit-Hours, CourseLevel, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents)

8 Q2 Consider the following relation:
R=(CourseNo, SectionNo, OfferingDept, Credit-Hours, CourseLevel, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents) Suppose the following FDs hold on R: CourseNo → OfferingDept, CreditHours, CourseLevel Partial Dependency CourseNo, SectionNo, Semester, year → Days_Hours, RoomNo, NoofStudents, InstructorSSN RoomNo, Days_Hours, Semester, Year → InstructorSSN, CourseNo, SectionNo -According to the given FDs and CK selection rules, the PK should be (CourseNo, SectionNo, Semester, year ). 1NF Course(CourseNo, SectionNo, OfferingDept, Credit-Hours, CourseLevel, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents)

9 Q2 Course (CourseNo, SectionNo, OfferingDept, Credit-Hours, CourseLevel, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents) CourseNo → OfferingDept, CreditHours, CourseLevel Partial Dependency CourseNo, SectionNo, Semester, year → Days_Hours, RoomNo, NoofStudents, InstructorSSN RoomNo, Days_Hours, Semester, Year → InstructorSSN, CourseNo, SectionNo 2NF: FD1 violates the 2NF-Partial dependency . Course (CourseNo , OfferingDept, CreditHours, CourseLevel ) Course_Teaching (CourseNo, SectionNo, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents)

10 Q2 Course (CourseNo , OfferingDept, CreditHours, CourseLevel ) Course _Teaching (CourseNo, SectionNo, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents) CourseNo → OfferingDept, CreditHours, CourseLevel Partial Dependency CourseNo, SectionNo, Semester, year → Days_Hours, RoomNo, NoofStudents, InstructorSSN RoomNo, Days_Hours, Semester, Year → InstructorSSN, CourseNo, SectionNo 3NF: Thers is no Transitive dependency  no viloation for 3NF Course (CourseNo , OfferingDept, CreditHours, CourseLevel ) Course_Teaching (CourseNo, SectionNo, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents)

11 Q2 Course (CourseNo , OfferingDept, CreditHours, CourseLevel ) Course _Teaching (CourseNo, SectionNo, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents) CourseNo → OfferingDept, CreditHours, CourseLevel Partial Dependency CourseNo, SectionNo, Semester, year → Days_Hours, RoomNo, NoofStudents, InstructorSSN RoomNo, Days_Hours, Semester, Year → InstructorSSN, CourseNo, SectionNo BCNF: FD3 viloates BCNF where the determinant in a nontrivial FD is not a CK. Course (CourseNo , OfferingDept, CreditHours, CourseLevel ) Course_Teaching (CourseNo, SectionNo, InstructorSSN, Semester, Year, Days_Hours, RoomNo, NoofStudents) Room_Course (RoomNo, Days_Hours, Semester, Year , InstructorSSN, CourseNo, SectionNo)


Download ppt "Assignment#5 Normalization."

Similar presentations


Ads by Google