chapter 4: การทํานอร์มัลไลซ์...
TRANSCRIPT
11/09/57
1
LOGO
1
ChapterChapter 44:: การทาการทานอรนอรมลไลซมลไลซNormalizationNormalization
ChapterChapter 44:: การทาการทานอรนอรมลไลซมลไลซNormalizationNormalization
NormalizationNormalization
Normal Form
ความถกตองใหแกขอมล
วตถประสงคของ Normalization
Normalization เปนการออกแบบ
ขอมลลดลงดวย
ไดจากแหลงขอมลเพยงแหลงเดยว จงลดปญหาการปรบปรงขอมลไมถกตองได ( )
Data Redundancy and Update Anomalies
Staff relationและ Branch relationพนกงานและสาขาไวดวยกนใน StaffBranch relation
11/09/57
2
Data Redundancy and Update Anomalies Data Redundancy and Update Anomalies
ตาราง StaffBranch โดยรายละเอยดของสาขา (branch)สมาชกของ staff
(Insertion) ขอผดพลาดจากการลบขอมล (Deletion) ขอผดพลาดจากการแกไขขอมล (Modification)
Normalizationการ Normalization
1. First Normal Form(1NF)2. Second Normal Form(2NF)3. Third Normal Form(3NF)4. Boyce-Codd Normal Form(BCNF)5. Fourth Normal Form(4NF)6. Fifth Normal Form(5NF)
ขอบเขต ในทางปฏบตการทา Normalization 3 (3NF) ก
Normalization จนถง 3NF และกลาวถง BCNF จะไมกลาวถง 4NF และ 5NF หากนกศกษาตองการศกษาถง 4NF
และ 5NF สามารถอานไดจากหนงสออางอง
11/09/57
3
First Normal Form : 1NF
1. First Normal Form : 1NFRelation 1NF“คาของ Attribute ตางๆ ในแตละ Tuple จะมคา
ไมม RepeatingGroup และ Multi-valued”
ตวอยางตารางขอมล Employee
Emp_ID Emp_Name Dept Salary Course_NO
Course_Name
D-Complete
110 วลาวลย ขาคม Account 15,000 01 Acc PAC 12/060200203 SPSS 30/4/2002
112 อษาวด เจรญกล Account 15,100 01 Acc PAC 12/0602002091 นพพร บญช IT 12,000 02 3D Studio
max31/03/2002
03 SPSS 30/4/2002010 กสมา รมเยน IT 11,000 03 SPSS 30/4/2002001 Marketing 12,500 01 Acc PAC 12/06/2002
วธการทาใหอยในรปแบบ 1NF
1. กาจด repeating group ( )2.
1NF ตาราง EmployeeEmp_ID Course_
NOEmp_Name Dept Salary Course_
NameD-Complete
110 01 วลาวลย ขาคม Account 15,000 Acc PAC 12/0602002110 03 วลาวลย ขาคม Account 15,000 SPSS 30/4/2002112 01 อษาวด เจรญกล Account 15,100 Acc PAC 12/0602002091 02 นพพร บญช IT 12,000 3D Studio max 31/03/2002091 03 นพพร บญช IT 12,000 SPSS 30/4/2002010 03 กสมา รมเยน IT 11,000 SPSS 30/4/2002001 01 Marketing 12,500 Acc PAC 12/06/2002
11/09/57
4
Employee
Emp_ID Emp_NameDeptSalaryCourse_No
Course_Name
D_Complete
Employee
Emp_ID
Emp_NameDept
Salary
Course_No
Course_Name
D_Complete
1NF
First Normal Form : 1NF Second Normal Form (2NF)2. Second Normal Form : 2NF
Relation 2NF“1. Relation 1NF2. Attributeกบ Attribute (Fully FunctionalDependency)กลาวงายๆ วา ไมม Partial Dependency ”
Second Normal Form (2NF)
Emp_ID Course_No D_Complete Course_Name
Partial DependencyEmployee ไมไดอยในรป 2NF Partial
Dependency ตองทาการแตก RelationEmployee(Emp_id , Course_No , D_Complete)Course(Course_No, Course_Name)
full functional dependencySecond Normal Form (2NF)
Emp_ID Emp_Name Dept Salary001 Marketing 12,500010 กสมา รมเยน IT 11,000091 นพพร บญช IT 12,000110 วลาวลย ขาคม Account 15,000
112 อษาวด เจรญกล Account 15,100
Employee
Course_No Course_Name01 Acc PAC02 3D Studio max03 SPSS
Course
11/09/57
5
Third Normal Form : 3NF3. Third Normal Form : 3NF
Relation 3NF“1. Relation 2NF2. Attributeกาหนดคาของ Attributeวา ไมม Transitive Dependency ”
Third Normal Form : 3NF
Emp_ID Name Job_Class Chg_Hour
Transitive Dependency
ตาราง Employee ไมไดอยในรป 3NF Transitive Dependency ตองทาการแตก Relation
Employee(Emp_id ,Name, Job_Class)Job(Job_Class, Chg_Hour)
Third Normal Form : 3NF
Employee
Course
Emp_Name
Salary
JobEmp_ID
D_Complete
Course_No Course_Name
TRAINED
Job
Chg_Hour
WORK_ON
Job_Class
ดเพนเดนซไดอะแกรม (Dependency diagram)
11/09/57
6
NormalizationEntity
1NF
2NF
3NF
กาจด PartialDependency
กาจด TransitiveDependency
Boyce/Codd Normal Form : BCNF4. Boyce/Codd Normal Form : BCNF
Relation BCNF“1. Relation 3NF2. ไมม Attribute RelationAttribute
(Composite Key)”
Boyce-Codd normal form (BCNF)
ลกษณะ 3NF BCNF สงเกตวายงม Attribute Attribute
Primary key (C B)
Boyce/Codd Normal Form : BCNFเชน หากเลอก S# และ P# เปนคยหลกแลวจะเกดปญหา
ใน Relation SNAME จะมคณสมบตในการระบคาของAttribute S# ได
S# SNAME P# QTY
11/09/57
7
Boyce/Codd Normal Form : BCNF
Relation SUPPLIER3 ตองทาการแตกรเลชนออก โดยแยก attribute PKORDER2(SNAME, P#, QTY)SUPPLIER4(SNAME , S#)
S# SNAME P# QTY
Boyce-Codd normal form (BCNF)
ในการทาใหเปนรปแบบบรรทดฐาน (Normal Form)
การแตก relation มากเกนไป (Overnormalization)การดนอรมอลไลเซชน (Denormalization)
การแตก relation มากเกนไป(Overnormalization)
วตถประสงคของการทาใหเปนรปแบบบรรทดฐาน คอ
ขอมล
พยายามวเคราะห relation ใหอยในรปแบบ 3NF
BCNF, 4NF และ 5NF ( )
11/09/57
8
relationมากเกนความจาเปน (Overnormalization) เพราะ การแตก relation ออกเปน relation ยอยมากเกนไปมผลตอ
ประสทธภาพในการทางานของฐานขอมล เชน ในการคนคนขอมลจะตองใชเวลามากกวาเดม เปนตน
การดนอรมอลไลเซชน (Denormalization)
Normalization โดยยอมเกบ
เชน relation 3NFแตหยดอยเพยงรปแบบ 2NF เปนตน
ควรมการระบสาเหต และวธการในการปรบปรงขอมลใน
ถกตอง ถาขอมลใน relation
(Select)ประสทธภาพในการทางานของฐานขอมล และไมมปญหาดาน
การดนอรมอลไลเซชน (Denormalization) แบบฝกหด
A B C D E F G
11/09/57
9
แบบฝกหด
รหสสมาชก
รหสความชานาญ
ประเภทความชานาญ
คานาหนา นามสกล อาย รหสกลม รหสเมอง รหสผ ควบคม
รหส นศ.
ภาคเรยน รหสวชา
ประเภท
วชา
ประเภท
หนวยกต เกรด
4501 1/45 A01คณตศาสตรคอม
ฯ 02ชพ
บงคบ
3 F
1/45 A03 ภาษาไทย 01 น 3 C
2/45 A01คณตศาสตรคอม
ฯ 02ชพ
บงคบ
3 D
2/45 A04 ภาษาองกฤษ1 01 น 3 D+
จงวเคราะหและจดทา Normalization ระบบการลงทะเบยนของนกศกษา ใหมความ