SlideShare una empresa de Scribd logo
1 de 33
Normalization By  Hardik Sondagar
Chapter Objectives ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Chapter Objectives (2) ,[object Object],[object Object],[object Object],[object Object]
The Purpose of Normalization Normalization   is a technique for producing a set of relations with desirable properties, given the data requirements of an enterprise. The process of normalization  is a formal method that  identifies relations based on their primary or candidate keys and the functional dependencies among their  attributes.
Update Anomalies Relations that have redundant data may have problems called  update anomalies , which are classified as , Insertion anomalies Deletion anomalies Modification anomalies
Example of Update Anomalies To insert a new staff with branchNo B007 into the StaffBranch relation; To delete a tuple that represents the last member of staff located at a branch B007; To change the address of branch B003. StaffBranch Figure 1 StraffBranch relation staffNo sName position salary branchNo bAddress SL21 John White Manager 30000 B005 22 Deer Rd, London SG37 Ann Beech Assistant 12000 B003 163 Main St,Glasgow SG14 David Ford Supervisor 18000 B003 163 Main St,Glasgow SA9 Mary Howe Assistant 9000 B007 16 Argyll St, Aberdeen SG5 Susan Brand Manager 24000 B003 163 Main St,Glasgow SL41 Julie Lee Assistant 9000 B005 22 Deer Rd, London
Example of Update Anomalies (2) Figure 2 Straff and Branch relations Staff Branch staffNo sName position salary branceNo SL21 John White Manager 30000 B005 SG37 Ann Beech Assistant 12000 B003 SG14 David Ford Supervisor 18000 B003 SA9 Mary Howe Assistant 9000 B007 SG5 Susan Brand Manager 24000 B003 SL41 Julie Lee Assistant 9000 B005 branceNo bAddress B005 22 Deer Rd, London B007 16 Argyll St, Aberdeen B003 163 Main St,Glasgow
Functional Dependencies Functional dependency  describes the relationship between attributes in a relation. For example, if A and B are attributes of relation R, and B is  functionally dependent on A ( denoted A  B), if each value of A is associated with exactly one value of B. ( A and B may each consist of one or more attributes.) A B B is functionally dependent on A Determinant Refers to the attribute or group of attributes on the left-hand side of the arrow of a functional dependency
Functional Dependencies (2) Trival functional dependency   means that the right-hand side is a subset ( not necessarily a proper subset) of the left- hand side. For example: (See Figure 1) staffNo, sName    sName staffNo, sName    staffNo They do not provide any additional information about possible integrity constraints on the values held by these attributes. We are normally more interested in  nontrivial dependencies  because they represent integrity constraints for the relation.
Functional Dependencies (3) ,[object Object],[object Object],[object Object],[object Object]
[object Object],Functional Dependencies (4) Functional dependency   is a property of the meaning or  semantics of the attributes in a relation. When a functional  dependency is present, the dependency is specified as a  constraint  between the attributes. An important integrity constraint to consider first is  the identification of candidate keys, one of which is selected to  be the primary key  for the relation using functional dependency.
Functional Dependencies (5) Inference Rules A set of all functional dependencies that are implied by a given set of functional dependencies X is called closure of X, written X + . A set of inference rule is needed to compute X +  from X. ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Functional Dependencies (6) Minial Sets of Functional Dependencies A set of functional dependencies X is  minimal  if it satisfies  the following condition: ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Functional Dependencies (7) Example of A Minial Sets of Functional Dependencies A set of functional dependencies for the StaffBranch relation  satisfies the three conditions for producing a minimal set. staffNo    sName staffNo    position staffNo    salary staffNo    branchNo staffNo    bAddress branchNo    bAddress branchNo, position    salary bAddress, position    salary
The Process of Normalization ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
First Normal Form (1NF) Unnormalized form (UNF) A table that contains one or more repeating groups. Figure 3 ClientRental unnormalized table Repeating group = (propertyNo, pAddress, rentStart, rentFinish, rent, ownerNo, oName) ClientNo cName propertyNo pAddress rentStart rentFinish rent ownerNo oName CR76 John kay PG4 PG16 6 lawrence St,Glasgow 5 Novar Dr, Glasgow 1-Jul-00 1-Sep-02 31-Aug-01 1-Sep-02 350 450 CO40 CO93 Tina Murphy Tony Shaw CR56 Aline Stewart PG4 PG36 PG16 6 lawrence St,Glasgow 2 Manor Rd, Glasgow 5 Novar Dr, Glasgow 1-Sep-99 10-Oct-00 1-Nov-02 10-Jun-00 1-Dec-01 1-Aug-03 350 370 450 CO40 CO93 CO93 Tina Murphy Tony Shaw Tony Shaw
Definition of 1NF First Normal Form  is a relation in which the intersection of each row and column contains one and only one value. ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
1NF ClientRental relation with the first approach Figure 4  1NF ClientRental relation with the first approach The ClientRental relation is defined as follows, ClientRental (  clientNo ,  propertyNo , cName, pAddress, rentStart, rentFinish, rent,  ownerNo, oName) With the first approach, we remove the repeating group ( property rented details ) by entering the appropriate client  data into each row. ClientNo propertyNo cName pAddress rentStart rentFinish rent ownerNo oName CR76 PG4 John Kay 6 lawrence St,Glasgow 1-Jul-00 31-Aug-01 350 CO40 Tina Murphy CR76 PG16 John Kay 5 Novar Dr, Glasgow 1-Sep-02 1-Sep-02 450 CO93 Tony Shaw CR56 PG4 Aline Stewart 6 lawrence St,Glasgow 1-Sep-99 10-Jun-00 350 CO40 Tina Murphy CR56 PG36 Aline Stewart 2 Manor Rd, Glasgow 10-Oct-00 1-Dec-01 370 CO93 Tony Shaw CR56 PG16 Aline Stewart 5 Novar Dr, Glasgow 1-Nov-02 1-Aug-03 450 CO93 Tony Shaw
1NF ClientRental relation with the second approach With the second approach, we remove the repeating group  ( property rented details ) by placing the repeating data along with  a copy of the original key attribute ( clientNo ) in a separte relation. Client ( clientNo , cName) PropertyRentalOwner  ( clientNo ,  propertyNo , pAddress, rentStart,  rentFinish, rent, ownerNo, oName) Figure 5  1NF ClientRental relation with the second approach ClientNo cName CR76 John  Kay CR56 Aline  Stewart ClientNo propertyNo pAddress rentStart rentFinish rent ownerNo oName CR76 PG4 6 lawrence St,Glasgow 1-Jul-00 31-Aug-01 350 CO40 Tina Murphy CR76 PG16 5 Novar Dr, Glasgow 1-Sep-02 1-Sep-02 450 CO93 Tony Shaw CR56 PG4 6 lawrence St,Glasgow 1-Sep-99 10-Jun-00 350 CO40 Tina Murphy CR56 PG36 2 Manor Rd, Glasgow 10-Oct-00 1-Dec-01 370 CO93 Tony Shaw CR56 PG16 5 Novar Dr, Glasgow 1-Nov-02 1-Aug-03 450 CO93 Tony Shaw
Full functional dependency Full functional dependency  indicates that if A and B are  attributes of a relation, B is fully functionally dependent on A if B is functionally dependent on A, but not on any proper subset of A. A functional dependency A  B is  partially dependent   if there is some attributes that can be removed from A and the dependency still holds.
Second Normal Form (2NF) Second normal form (2NF)   is a relation that is in first normal form and every non-primary-key attribute is fully functionally dependent on the primary key. The normalization of 1NF relations to 2NF involves the removal of  partial dependencies . If a partial dependency exists, we remove the function dependent attributes from the relation by placing them in a new relation along with a copy of their determinant.
2NF ClientRental relation The  ClientRental  relation has the following functional  dependencies: fd1  clientNo, propertyNo    rentStart, rentFinish  (Primary Key) fd2 clientNo    cName ( Partial dependency ) fd3 propertyNo    pAddress, rent, ownerNo, oName   ( Partial dependency ) fd4 ownerNo    oName (Transitive Dependency) fd5 clientNo, rentStart    propertyNo, pAddress,  rentFinish, rent, ownerNo, oName (Candidate key) fd6 propertyNo, rentStart    clientNo, cName, rentFinish  (Candidate key)
2NF ClientRental relation After removing the partial dependencies, the creation of the three  new relations called  Client, Rental,  and  PropertyOwner Client Rental PropertyOwner Client   ( clientNo , cName) Rental   ( clientNo ,  propertyNo , rentStart, rentFinish) PropertyOwner  ( propertyNo , pAddress, rent, ownerNo, oName) Figure 6  2NF ClientRental relation ClientNo cName CR76 John  Kay CR56 Aline  Stewart ClientNo propertyNo rentStart rentFinish CR76 PG4 1-Jul-00 31-Aug-01 CR76 PG16 1-Sep-02 1-Sep-02 CR56 PG4 1-Sep-99 10-Jun-00 CR56 PG36 10-Oct-00 1-Dec-01 CR56 PG16 1-Nov-02 1-Aug-03 propertyNo pAddress rent ownerNo oName PG4 6 lawrence St,Glasgow 350 CO40 Tina Murphy PG16 5 Novar Dr, Glasgow 450 CO93 Tony Shaw PG36 2 Manor Rd, Glasgow 370 CO93 Tony Shaw
Third Normal Form (3NF) Transitive dependency  A condition where A, B, and C are attributes of a relation such that if A     B and B     C, then C is transitively dependent on A via B (provided that A is not functionally dependent on B or C). Third normal form (3NF) A relation that is in first and second normal form, and in which  no non-primary-key attribute is  transitively  dependent on the  primary key. The normalization of 2NF relations to 3NF involves the removal of transitive dependencies by placing the attribute(s) in a new relation along with a copy of the determinant.
3NF ClientRental relation The functional dependencies for the  Client ,  Rental  and  PropertyOwner  relations are as follows: Client fd2 clientNo    cName   (Primary Key) Rental fd1  clientNo, propertyNo    rentStart, rentFinish  (Primary Key) fd5 clientNo, rentStart    propertyNo, rentFinish (Candidate key) fd6 propertyNo, rentStart    clientNo, rentFinish  (Candidate key) PropertyOwner fd3 propertyNo    pAddress, rent, ownerNo, oName     (Primary Key) fd4 ownerNo    oName ( Transitive Dependency )
3NF ClientRental relation The resulting 3NF relations have the forms: Client   ( clientNo , cName) Rental   ( clientNo ,  propertyNo , rentStart, rentFinish) PropertyOwner  ( propertyNo , pAddress, rent, ownerNo) Owner   ( ownerNo , oName)
3NF ClientRental relation Client Rental PropertyOwner Owner Figure 7  2NF ClientRental relation ClientNo cName CR76 John  Kay CR56 Aline  Stewart ClientNo propertyNo rentStart rentFinish CR76 PG4 1-Jul-00 31-Aug-01 CR76 PG16 1-Sep-02 1-Sep-02 CR56 PG4 1-Sep-99 10-Jun-00 CR56 PG36 10-Oct-00 1-Dec-01 CR56 PG16 1-Nov-02 1-Aug-03 propertyNo pAddress rent ownerNo PG4 6 lawrence St,Glasgow 350 CO40 PG16 5 Novar Dr, Glasgow 450 CO93 PG36 2 Manor Rd, Glasgow 370 CO93 ownerNo oName CO40 Tina Murphy CO93 Tony Shaw
Boyce-Codd Normal Form (BCNF) Boyce-Codd normal form (BCNF) A relation is in BCNF, if and only if, every determinant is a  candidate key. The difference between 3NF and BCNF  is that for a functional dependency A    B, 3NF allows this dependency in a relation  if B is a primary-key attribute and A is not a candidate key,  whereas BCNF insists that for this dependency to remain in a relation, A must be a candidate key.
Example of BCNF fd1  clientNo, interviewDate    interviewTime, staffNo, roomNo  (Primary Key) fd2  staffNo,  interviewDate, interviewTime    clientNo   (Candidate key) fd3  roomNo,  interviewDate, interviewTime     clientNo, staffNo  (Candidate key) fd4  staffNo, interviewDate     roomNo  (not a candidate key) As a consequece the ClientInterview relation may suffer from update anmalies. For example, two tuples have to be updated if the roomNo need be changed for staffNo SG5 on the 13-May-02. Figure 8  ClientInterview relation ClientInterview ClientNo interviewDate interviewTime staffNo roomNo CR76 13-May-02 10.30 SG5 G101 CR76 13-May-02 12.00 SG5 G101 CR74 13-May-02 12.00 SG37 G102 CR56 1-Jul-02 10.30 SG5 G102
Example of BCNF(2) To transform the ClientInterview relation to BCNF, we must remove the violating functional dependency by creating two new relations called Interview and SatffRoom as shown below, Interview ( clientNo ,  interviewDate , interviewTime, staffNo) StaffRoom( staffNo ,  interviewDate,  roomNo) Interview StaffRoom Figure 9  BCNF Interview and StaffRoom relations ClientNo interviewDate interviewTime staffNo CR76 13-May-02 10.30 SG5 CR76 13-May-02 12.00 SG5 CR74 13-May-02 12.00 SG37 CR56 1-Jul-02 10.30 SG5 staffNo interviewDate roomNo SG5 13-May-02 G101 SG37 13-May-02 G102 SG5 1-Jul-02 G102
Fourth Normal Form (4NF) Multi-valued dependency (MVD)  represents a dependency between attributes (for example, A,  B and C) in a relation, such that for each value of A there is a  set of values for B and a set of value for C. However, the set of  values for B and C are independent of each other. ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Fourth Normal Form (4NF) Fourth normal form (4NF)  A relation that is in Boyce-Codd normal form and contains no nontrivial multi-valued dependencies.
Fifth Normal Form (5NF) Lossless-join dependency A property of decomposition, which ensures that no spurious tuples are generated when relations are reunited through a natural join operation. Join dependency Describes a type of dependency. For example, for a relation R with subsets of the attributes of R denoted as A, B, …, Z, a relation R satisfies a join dependency if, and only if, every legal value of R is equal to the join of its projections on A, B, …, Z. Fifth normal form (5NF) A relation that has no join dependency.

Más contenido relacionado

La actualidad más candente

Database Systems - Normalization of Relations(Chapter 4/3)
Database Systems - Normalization of Relations(Chapter 4/3)Database Systems - Normalization of Relations(Chapter 4/3)
Database Systems - Normalization of Relations(Chapter 4/3)Vidyasagar Mundroy
 
Normalization
NormalizationNormalization
NormalizationavniS
 
ALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NF
ALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NFALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NF
ALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NFijdms
 
Chapter 2 Relational Data Model-part 2
Chapter 2 Relational Data Model-part 2Chapter 2 Relational Data Model-part 2
Chapter 2 Relational Data Model-part 2Eddyzulham Mahluzydde
 
Database normalization
Database normalizationDatabase normalization
Database normalizationJignesh Jain
 
Database normalization
Database normalizationDatabase normalization
Database normalizationEdward Blurock
 
PRXChange: Accept No Substitutions
PRXChange: Accept No SubstitutionsPRXChange: Accept No Substitutions
PRXChange: Accept No SubstitutionsKen Borowiak
 
Normalization of database_tables_chapter_4
Normalization of database_tables_chapter_4Normalization of database_tables_chapter_4
Normalization of database_tables_chapter_4Farhan Chishti
 
Database normalization
Database normalizationDatabase normalization
Database normalizationVARSHAKUMARI49
 
Dbms ii mca-ch4-relational model-2013
Dbms ii mca-ch4-relational model-2013Dbms ii mca-ch4-relational model-2013
Dbms ii mca-ch4-relational model-2013Prosanta Ghosh
 
Legend Consistency, SAS (WUSS 2011)
Legend Consistency, SAS (WUSS 2011)Legend Consistency, SAS (WUSS 2011)
Legend Consistency, SAS (WUSS 2011)alice_m_cheng
 
Advanced Normalization
Advanced NormalizationAdvanced Normalization
Advanced NormalizationAbdullah Khosa
 

La actualidad más candente (20)

Database Systems - Normalization of Relations(Chapter 4/3)
Database Systems - Normalization of Relations(Chapter 4/3)Database Systems - Normalization of Relations(Chapter 4/3)
Database Systems - Normalization of Relations(Chapter 4/3)
 
Normalization
NormalizationNormalization
Normalization
 
Normalization
NormalizationNormalization
Normalization
 
ALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NF
ALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NFALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NF
ALGORITHM FOR RELATIONAL DATABASE NORMALIZATION UP TO 3NF
 
Chapter 2 Relational Data Model-part 2
Chapter 2 Relational Data Model-part 2Chapter 2 Relational Data Model-part 2
Chapter 2 Relational Data Model-part 2
 
Normalization
NormalizationNormalization
Normalization
 
Normalization in DBMS
Normalization in DBMSNormalization in DBMS
Normalization in DBMS
 
Database normalization
Database normalizationDatabase normalization
Database normalization
 
Normalization
Normalization Normalization
Normalization
 
Functional Dependency
Functional DependencyFunctional Dependency
Functional Dependency
 
Database normalization
Database normalizationDatabase normalization
Database normalization
 
Normalization
NormalizationNormalization
Normalization
 
PRXChange: Accept No Substitutions
PRXChange: Accept No SubstitutionsPRXChange: Accept No Substitutions
PRXChange: Accept No Substitutions
 
Dbms unit-3
Dbms unit-3Dbms unit-3
Dbms unit-3
 
Normalization of database_tables_chapter_4
Normalization of database_tables_chapter_4Normalization of database_tables_chapter_4
Normalization of database_tables_chapter_4
 
Database normalization
Database normalizationDatabase normalization
Database normalization
 
Dbms ii mca-ch4-relational model-2013
Dbms ii mca-ch4-relational model-2013Dbms ii mca-ch4-relational model-2013
Dbms ii mca-ch4-relational model-2013
 
Legend Consistency, SAS (WUSS 2011)
Legend Consistency, SAS (WUSS 2011)Legend Consistency, SAS (WUSS 2011)
Legend Consistency, SAS (WUSS 2011)
 
Database Normalization
Database NormalizationDatabase Normalization
Database Normalization
 
Advanced Normalization
Advanced NormalizationAdvanced Normalization
Advanced Normalization
 

Destacado

Normalization by Ashwin and Tanmay
Normalization by Ashwin and TanmayNormalization by Ashwin and Tanmay
Normalization by Ashwin and TanmayAshwin Dinoriya
 
Lecture8 Normalization Aggarwal
Lecture8 Normalization AggarwalLecture8 Normalization Aggarwal
Lecture8 Normalization Aggarwalanerudhbalaji
 
functional dependencies with example
functional dependencies with examplefunctional dependencies with example
functional dependencies with exampleSiddhi Viradiya
 
Functional dependencies and normalization for relational databases
Functional dependencies and normalization for relational databasesFunctional dependencies and normalization for relational databases
Functional dependencies and normalization for relational databasesJafar Nesargi
 
Entity relationship diagram - Concept on normalization
Entity relationship diagram - Concept on normalizationEntity relationship diagram - Concept on normalization
Entity relationship diagram - Concept on normalizationSatya Pal
 

Destacado (7)

Normalization by Ashwin and Tanmay
Normalization by Ashwin and TanmayNormalization by Ashwin and Tanmay
Normalization by Ashwin and Tanmay
 
Lecture8 Normalization Aggarwal
Lecture8 Normalization AggarwalLecture8 Normalization Aggarwal
Lecture8 Normalization Aggarwal
 
Normalization
NormalizationNormalization
Normalization
 
functional dependencies with example
functional dependencies with examplefunctional dependencies with example
functional dependencies with example
 
Functional dependencies and normalization for relational databases
Functional dependencies and normalization for relational databasesFunctional dependencies and normalization for relational databases
Functional dependencies and normalization for relational databases
 
Entity relationship diagram - Concept on normalization
Entity relationship diagram - Concept on normalizationEntity relationship diagram - Concept on normalization
Entity relationship diagram - Concept on normalization
 
Databases: Normalisation
Databases: NormalisationDatabases: Normalisation
Databases: Normalisation
 

Similar a Normalization (20)

Normalization DBMS.ppt
Normalization DBMS.pptNormalization DBMS.ppt
Normalization DBMS.ppt
 
UNIT 2 -PPT.pptx
UNIT 2 -PPT.pptxUNIT 2 -PPT.pptx
UNIT 2 -PPT.pptx
 
DBMS-Normalization.ppt
DBMS-Normalization.pptDBMS-Normalization.ppt
DBMS-Normalization.ppt
 
Penormalan/Normalization
Penormalan/NormalizationPenormalan/Normalization
Penormalan/Normalization
 
Normalizatrion.ppt
Normalizatrion.pptNormalizatrion.ppt
Normalizatrion.ppt
 
Chapter 2 Relational Data Model-part 3
Chapter 2 Relational Data Model-part 3Chapter 2 Relational Data Model-part 3
Chapter 2 Relational Data Model-part 3
 
Normalization
NormalizationNormalization
Normalization
 
Normalization
NormalizationNormalization
Normalization
 
Normalization1
Normalization1Normalization1
Normalization1
 
7. Relational Database Design in DBMS
7. Relational Database Design in DBMS7. Relational Database Design in DBMS
7. Relational Database Design in DBMS
 
Normalization
NormalizationNormalization
Normalization
 
Chapter10
Chapter10Chapter10
Chapter10
 
L8 design1
L8 design1L8 design1
L8 design1
 
L9 design2
L9 design2L9 design2
L9 design2
 
Function Dependencies and Normalization
 Function Dependencies and Normalization Function Dependencies and Normalization
Function Dependencies and Normalization
 
eaxmple of Normalisation
eaxmple of Normalisationeaxmple of Normalisation
eaxmple of Normalisation
 
Lecture No. 21-22.ppt
Lecture No. 21-22.pptLecture No. 21-22.ppt
Lecture No. 21-22.ppt
 
Data normalization
Data normalizationData normalization
Data normalization
 
Chapter – 4 Normalization and Relational Algebra.pdf
Chapter – 4 Normalization and Relational Algebra.pdfChapter – 4 Normalization and Relational Algebra.pdf
Chapter – 4 Normalization and Relational Algebra.pdf
 
ch7
ch7ch7
ch7
 

Último

Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptshraddhaparab530
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsManeerUddin
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfErwinPantujan2
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 

Último (20)

Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.ppt
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture hons
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 

Normalization

  • 1. Normalization By Hardik Sondagar
  • 2.
  • 3.
  • 4. The Purpose of Normalization Normalization is a technique for producing a set of relations with desirable properties, given the data requirements of an enterprise. The process of normalization is a formal method that identifies relations based on their primary or candidate keys and the functional dependencies among their attributes.
  • 5. Update Anomalies Relations that have redundant data may have problems called update anomalies , which are classified as , Insertion anomalies Deletion anomalies Modification anomalies
  • 6. Example of Update Anomalies To insert a new staff with branchNo B007 into the StaffBranch relation; To delete a tuple that represents the last member of staff located at a branch B007; To change the address of branch B003. StaffBranch Figure 1 StraffBranch relation staffNo sName position salary branchNo bAddress SL21 John White Manager 30000 B005 22 Deer Rd, London SG37 Ann Beech Assistant 12000 B003 163 Main St,Glasgow SG14 David Ford Supervisor 18000 B003 163 Main St,Glasgow SA9 Mary Howe Assistant 9000 B007 16 Argyll St, Aberdeen SG5 Susan Brand Manager 24000 B003 163 Main St,Glasgow SL41 Julie Lee Assistant 9000 B005 22 Deer Rd, London
  • 7. Example of Update Anomalies (2) Figure 2 Straff and Branch relations Staff Branch staffNo sName position salary branceNo SL21 John White Manager 30000 B005 SG37 Ann Beech Assistant 12000 B003 SG14 David Ford Supervisor 18000 B003 SA9 Mary Howe Assistant 9000 B007 SG5 Susan Brand Manager 24000 B003 SL41 Julie Lee Assistant 9000 B005 branceNo bAddress B005 22 Deer Rd, London B007 16 Argyll St, Aberdeen B003 163 Main St,Glasgow
  • 8. Functional Dependencies Functional dependency describes the relationship between attributes in a relation. For example, if A and B are attributes of relation R, and B is functionally dependent on A ( denoted A B), if each value of A is associated with exactly one value of B. ( A and B may each consist of one or more attributes.) A B B is functionally dependent on A Determinant Refers to the attribute or group of attributes on the left-hand side of the arrow of a functional dependency
  • 9. Functional Dependencies (2) Trival functional dependency means that the right-hand side is a subset ( not necessarily a proper subset) of the left- hand side. For example: (See Figure 1) staffNo, sName  sName staffNo, sName  staffNo They do not provide any additional information about possible integrity constraints on the values held by these attributes. We are normally more interested in nontrivial dependencies because they represent integrity constraints for the relation.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. Functional Dependencies (7) Example of A Minial Sets of Functional Dependencies A set of functional dependencies for the StaffBranch relation satisfies the three conditions for producing a minimal set. staffNo  sName staffNo  position staffNo  salary staffNo  branchNo staffNo  bAddress branchNo  bAddress branchNo, position  salary bAddress, position  salary
  • 15.
  • 16. First Normal Form (1NF) Unnormalized form (UNF) A table that contains one or more repeating groups. Figure 3 ClientRental unnormalized table Repeating group = (propertyNo, pAddress, rentStart, rentFinish, rent, ownerNo, oName) ClientNo cName propertyNo pAddress rentStart rentFinish rent ownerNo oName CR76 John kay PG4 PG16 6 lawrence St,Glasgow 5 Novar Dr, Glasgow 1-Jul-00 1-Sep-02 31-Aug-01 1-Sep-02 350 450 CO40 CO93 Tina Murphy Tony Shaw CR56 Aline Stewart PG4 PG36 PG16 6 lawrence St,Glasgow 2 Manor Rd, Glasgow 5 Novar Dr, Glasgow 1-Sep-99 10-Oct-00 1-Nov-02 10-Jun-00 1-Dec-01 1-Aug-03 350 370 450 CO40 CO93 CO93 Tina Murphy Tony Shaw Tony Shaw
  • 17.
  • 18. 1NF ClientRental relation with the first approach Figure 4 1NF ClientRental relation with the first approach The ClientRental relation is defined as follows, ClientRental ( clientNo , propertyNo , cName, pAddress, rentStart, rentFinish, rent, ownerNo, oName) With the first approach, we remove the repeating group ( property rented details ) by entering the appropriate client data into each row. ClientNo propertyNo cName pAddress rentStart rentFinish rent ownerNo oName CR76 PG4 John Kay 6 lawrence St,Glasgow 1-Jul-00 31-Aug-01 350 CO40 Tina Murphy CR76 PG16 John Kay 5 Novar Dr, Glasgow 1-Sep-02 1-Sep-02 450 CO93 Tony Shaw CR56 PG4 Aline Stewart 6 lawrence St,Glasgow 1-Sep-99 10-Jun-00 350 CO40 Tina Murphy CR56 PG36 Aline Stewart 2 Manor Rd, Glasgow 10-Oct-00 1-Dec-01 370 CO93 Tony Shaw CR56 PG16 Aline Stewart 5 Novar Dr, Glasgow 1-Nov-02 1-Aug-03 450 CO93 Tony Shaw
  • 19. 1NF ClientRental relation with the second approach With the second approach, we remove the repeating group ( property rented details ) by placing the repeating data along with a copy of the original key attribute ( clientNo ) in a separte relation. Client ( clientNo , cName) PropertyRentalOwner ( clientNo , propertyNo , pAddress, rentStart, rentFinish, rent, ownerNo, oName) Figure 5 1NF ClientRental relation with the second approach ClientNo cName CR76 John Kay CR56 Aline Stewart ClientNo propertyNo pAddress rentStart rentFinish rent ownerNo oName CR76 PG4 6 lawrence St,Glasgow 1-Jul-00 31-Aug-01 350 CO40 Tina Murphy CR76 PG16 5 Novar Dr, Glasgow 1-Sep-02 1-Sep-02 450 CO93 Tony Shaw CR56 PG4 6 lawrence St,Glasgow 1-Sep-99 10-Jun-00 350 CO40 Tina Murphy CR56 PG36 2 Manor Rd, Glasgow 10-Oct-00 1-Dec-01 370 CO93 Tony Shaw CR56 PG16 5 Novar Dr, Glasgow 1-Nov-02 1-Aug-03 450 CO93 Tony Shaw
  • 20. Full functional dependency Full functional dependency indicates that if A and B are attributes of a relation, B is fully functionally dependent on A if B is functionally dependent on A, but not on any proper subset of A. A functional dependency A  B is partially dependent if there is some attributes that can be removed from A and the dependency still holds.
  • 21. Second Normal Form (2NF) Second normal form (2NF) is a relation that is in first normal form and every non-primary-key attribute is fully functionally dependent on the primary key. The normalization of 1NF relations to 2NF involves the removal of partial dependencies . If a partial dependency exists, we remove the function dependent attributes from the relation by placing them in a new relation along with a copy of their determinant.
  • 22. 2NF ClientRental relation The ClientRental relation has the following functional dependencies: fd1 clientNo, propertyNo  rentStart, rentFinish (Primary Key) fd2 clientNo  cName ( Partial dependency ) fd3 propertyNo  pAddress, rent, ownerNo, oName ( Partial dependency ) fd4 ownerNo  oName (Transitive Dependency) fd5 clientNo, rentStart  propertyNo, pAddress, rentFinish, rent, ownerNo, oName (Candidate key) fd6 propertyNo, rentStart  clientNo, cName, rentFinish (Candidate key)
  • 23. 2NF ClientRental relation After removing the partial dependencies, the creation of the three new relations called Client, Rental, and PropertyOwner Client Rental PropertyOwner Client ( clientNo , cName) Rental ( clientNo , propertyNo , rentStart, rentFinish) PropertyOwner ( propertyNo , pAddress, rent, ownerNo, oName) Figure 6 2NF ClientRental relation ClientNo cName CR76 John Kay CR56 Aline Stewart ClientNo propertyNo rentStart rentFinish CR76 PG4 1-Jul-00 31-Aug-01 CR76 PG16 1-Sep-02 1-Sep-02 CR56 PG4 1-Sep-99 10-Jun-00 CR56 PG36 10-Oct-00 1-Dec-01 CR56 PG16 1-Nov-02 1-Aug-03 propertyNo pAddress rent ownerNo oName PG4 6 lawrence St,Glasgow 350 CO40 Tina Murphy PG16 5 Novar Dr, Glasgow 450 CO93 Tony Shaw PG36 2 Manor Rd, Glasgow 370 CO93 Tony Shaw
  • 24. Third Normal Form (3NF) Transitive dependency A condition where A, B, and C are attributes of a relation such that if A  B and B  C, then C is transitively dependent on A via B (provided that A is not functionally dependent on B or C). Third normal form (3NF) A relation that is in first and second normal form, and in which no non-primary-key attribute is transitively dependent on the primary key. The normalization of 2NF relations to 3NF involves the removal of transitive dependencies by placing the attribute(s) in a new relation along with a copy of the determinant.
  • 25. 3NF ClientRental relation The functional dependencies for the Client , Rental and PropertyOwner relations are as follows: Client fd2 clientNo  cName (Primary Key) Rental fd1 clientNo, propertyNo  rentStart, rentFinish (Primary Key) fd5 clientNo, rentStart  propertyNo, rentFinish (Candidate key) fd6 propertyNo, rentStart  clientNo, rentFinish (Candidate key) PropertyOwner fd3 propertyNo  pAddress, rent, ownerNo, oName (Primary Key) fd4 ownerNo  oName ( Transitive Dependency )
  • 26. 3NF ClientRental relation The resulting 3NF relations have the forms: Client ( clientNo , cName) Rental ( clientNo , propertyNo , rentStart, rentFinish) PropertyOwner ( propertyNo , pAddress, rent, ownerNo) Owner ( ownerNo , oName)
  • 27. 3NF ClientRental relation Client Rental PropertyOwner Owner Figure 7 2NF ClientRental relation ClientNo cName CR76 John Kay CR56 Aline Stewart ClientNo propertyNo rentStart rentFinish CR76 PG4 1-Jul-00 31-Aug-01 CR76 PG16 1-Sep-02 1-Sep-02 CR56 PG4 1-Sep-99 10-Jun-00 CR56 PG36 10-Oct-00 1-Dec-01 CR56 PG16 1-Nov-02 1-Aug-03 propertyNo pAddress rent ownerNo PG4 6 lawrence St,Glasgow 350 CO40 PG16 5 Novar Dr, Glasgow 450 CO93 PG36 2 Manor Rd, Glasgow 370 CO93 ownerNo oName CO40 Tina Murphy CO93 Tony Shaw
  • 28. Boyce-Codd Normal Form (BCNF) Boyce-Codd normal form (BCNF) A relation is in BCNF, if and only if, every determinant is a candidate key. The difference between 3NF and BCNF is that for a functional dependency A  B, 3NF allows this dependency in a relation if B is a primary-key attribute and A is not a candidate key, whereas BCNF insists that for this dependency to remain in a relation, A must be a candidate key.
  • 29. Example of BCNF fd1 clientNo, interviewDate  interviewTime, staffNo, roomNo (Primary Key) fd2 staffNo, interviewDate, interviewTime  clientNo (Candidate key) fd3 roomNo, interviewDate, interviewTime  clientNo, staffNo (Candidate key) fd4 staffNo, interviewDate  roomNo (not a candidate key) As a consequece the ClientInterview relation may suffer from update anmalies. For example, two tuples have to be updated if the roomNo need be changed for staffNo SG5 on the 13-May-02. Figure 8 ClientInterview relation ClientInterview ClientNo interviewDate interviewTime staffNo roomNo CR76 13-May-02 10.30 SG5 G101 CR76 13-May-02 12.00 SG5 G101 CR74 13-May-02 12.00 SG37 G102 CR56 1-Jul-02 10.30 SG5 G102
  • 30. Example of BCNF(2) To transform the ClientInterview relation to BCNF, we must remove the violating functional dependency by creating two new relations called Interview and SatffRoom as shown below, Interview ( clientNo , interviewDate , interviewTime, staffNo) StaffRoom( staffNo , interviewDate, roomNo) Interview StaffRoom Figure 9 BCNF Interview and StaffRoom relations ClientNo interviewDate interviewTime staffNo CR76 13-May-02 10.30 SG5 CR76 13-May-02 12.00 SG5 CR74 13-May-02 12.00 SG37 CR56 1-Jul-02 10.30 SG5 staffNo interviewDate roomNo SG5 13-May-02 G101 SG37 13-May-02 G102 SG5 1-Jul-02 G102
  • 31.
  • 32. Fourth Normal Form (4NF) Fourth normal form (4NF) A relation that is in Boyce-Codd normal form and contains no nontrivial multi-valued dependencies.
  • 33. Fifth Normal Form (5NF) Lossless-join dependency A property of decomposition, which ensures that no spurious tuples are generated when relations are reunited through a natural join operation. Join dependency Describes a type of dependency. For example, for a relation R with subsets of the attributes of R denoted as A, B, …, Z, a relation R satisfies a join dependency if, and only if, every legal value of R is equal to the join of its projections on A, B, …, Z. Fifth normal form (5NF) A relation that has no join dependency.