Lecture 2 Normalization



Similar documents
Normalization. Normalization. Normalization. Data Redundancy

DATABASE NORMALIZATION

Normalization. Purpose of normalization Data redundancy Update anomalies Functional dependency Process of normalization

Normalization in Database Design

DBMS. Normalization. Module Title?

Chapter 15 Basics of Functional Dependencies and Normalization for Relational Databases

Database Design and Normalization

COSC344 Database Theory and Applications. Lecture 9 Normalisation. COSC344 Lecture 9 1

Bridge from Entity Relationship modeling to creating SQL databases, tables, & relations

DATABASE DESIGN: NORMALIZATION NOTE & EXERCISES (Up to 3NF)

Normalization of Database

Functional Dependency and Normalization for Relational Databases

Database Management System

Chapter 10. Functional Dependencies and Normalization for Relational Databases

Functional Dependencies and Finding a Minimal Cover

MCQs~Databases~Relational Model and Normalization

Theory of Relational Database Design and Normalization

Schema Refinement, Functional Dependencies, Normalization

CS143 Notes: Normalization Theory

CS 377 Database Systems. Database Design Theory and Normalization. Li Xiong Department of Mathematics and Computer Science Emory University

Chapter 5: Logical Database Design and the Relational Model Part 2: Normalization. Introduction to Normalization. Normal Forms.

Theory of Relational Database Design and Normalization

Chapter 10. Functional Dependencies and Normalization for Relational Databases. Copyright 2007 Ramez Elmasri and Shamkant B.

Normalisation 6 TABLE OF CONTENTS LEARNING OUTCOMES

Database Systems Concepts, Languages and Architectures

A. TRUE-FALSE: GROUP 2 PRACTICE EXAMPLES FOR THE REVIEW QUIZ:

Chapter 5: FUNCTIONAL DEPENDENCIES AND NORMALIZATION FOR RELATIONAL DATABASES

Chapter 10 Functional Dependencies and Normalization for Relational Databases

Normalization. Functional Dependence. Normalization. Normalization. GIS Applications. Spring 2011

Database Design and Normal Forms

Database Design Methodologies

Databases -Normalization III. (N Spadaccini 2010 and W Liu 2012) Databases - Normalization III 1 / 31

Introduction to normalization. Introduction to normalization

Normalization in OODB Design

Relational Database Design

Normalisation to 3NF. Database Systems Lecture 11 Natasha Alechina

Schema Design and Normal Forms Sid Name Level Rating Wage Hours

RELATIONAL DATABASE DESIGN

Relational Database Design: FD s & BCNF

LOGICAL DATABASE DESIGN

Week 11: Normal Forms. Logical Database Design. Normal Forms and Normalization. Examples of Redundancy

Normalization. CIS 331: Introduction to Database Systems

Database Normalization. Mohua Sarkar, Ph.D Software Engineer California Pacific Medical Center

DATABASE SYSTEMS. Chapter 7 Normalisation

C# Cname Ccity.. P1# Date1 Qnt1 P2# Date2 P9# Date9 1 Codd London Martin Paris Deen London

Database Design. Marta Jakubowska-Sobczak IT/ADC based on slides prepared by Paula Figueiredo, IT/DB

Schema Refinement and Normalization

Functional Dependencies and Normalization

Why Is This Important? Schema Refinement and Normal Forms. The Evils of Redundancy. Functional Dependencies (FDs) Example (Contd.)

Fundamentals of Database System

DATABASE DESIGN: Normalization Exercises & Answers

Lecture Notes on Database Normalization

Design of Relational Database Schemas

normalisation Goals: Suppose we have a db scheme: is it good? define precise notions of the qualities of a relational database scheme

CSCI-GA Database Systems Lecture 7: Schema Refinement and Normalization

Database Constraints and Design

Introduction to Databases, Fall 2005 IT University of Copenhagen. Lecture 5: Normalization II; Database design case studies. September 26, 2005

Announcements. SQL is hot! Facebook. Goal. Database Design Process. IT420: Database Management and Organization. Normalization (Chapter 3)

If it's in the 2nd NF and there are no non-key fields that depend on attributes in the table other than the Primary Key.

Normalization. CIS 3730 Designing and Managing Data. J.G. Zheng Fall 2010

Chapter 7: Relational Database Design

Chapter 7: Relational Database Design

7.1 The Information system

Normalisation. Why normalise? To improve (simplify) database design in order to. Avoid update problems Avoid redundancy Simplify update operations

Normal forms and normalization

An Algorithmic Approach to Database Normalization

Part 6. Normalization

CS2Bh: Current Technologies. Introduction to XML and Relational Databases. The Relational Model. The relational model

Chapter 9: Normalization

BCA. Database Management System

Chapter 6. Database Tables & Normalization. The Need for Normalization. Database Tables & Normalization

Relational Normalization: Contents. Relational Database Design: Rationale. Relational Database Design. Motivation

Optimum Database Design: Using Normal Forms and Ensuring Data Integrity. by Patrick Crever, Relational Database Programmer, Synergex

Databases and BigData

Limitations of E-R Designs. Relational Normalization Theory. Redundancy and Other Problems. Redundancy. Anomalies. Example

Boyce-Codd Normal Form

Unit 3.1. Normalisation 1 - V Normalisation 1. Dr Gordon Russell, Napier University

The Relational Model. Why Study the Relational Model? Relational Database: Definitions

Relational Database Design Theory


2. Basic Relational Data Model

DATABASE MANAGEMENT SYSTEMS. Question Bank:

Lecture 6. SQL, Logical DB Design

How To Write A Diagram

LiTH, Tekniska högskolan vid Linköpings universitet 1(7) IDA, Institutionen för datavetenskap Juha Takkinen

Topic 5.1: Database Tables and Normalization

RELATIONAL DATABASE DESIGN. Basic Concepts

Normalisation 1. Chapter 4.1 V4.0. Napier University

Normalization. Reduces the liklihood of anomolies

Chapter 8. Database Design II: Relational Normalization Theory

EECS 647: Introduction to Database Systems

6.830 Lecture PS1 Due Next Time (Tuesday!) Lab 1 Out today start early! Relational Model Continued, and Schema Design and Normalization

Relational Normalization Theory (supplemental material)

Functional Dependencies

SQL DDL. DBS Database Systems Designing Relational Databases. Inclusion Constraints. Key Constraints

Database Management Systems. Redundancy and Other Problems. Redundancy

Objectives, outcomes, and key concepts. Objectives: give an overview of the normal forms and their benefits and problems.

COMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model

Database Management Systems 2015

Transcription:

MIT 533 ระบบฐานข อม ล 2 Lecture 2 Normalization Walailuk University Lecture 2: Normalization 1

Objectives The purpose of normalization The identification of various types of update anomalies The concept of functional dependency How functional dependencies can be used to group attributes into relations that are in a known normal form. How toundertake the processof normalization. How toidentifythe mostcommonlyused normalforms, namelyfirst (1NF), second (2NF), and third (3NF) normalforms, and Boyce Codd normalform (BCNF). How toidentifyfourth (4NF), and fifth (5NF) normal forms. Lecture 2: Normalization 2

Normalization (Overview - I) Main objective in developing a logical data model for relational database systems is to create an accurate representation of the data, its relationships, and constraints. To achieve this objective, we must identify a suitable set of relations. A technique for producing a set of relations with desirable properties, given the data requirements of an enterprise. Developed by E.F. Codd (1972). Lecture 2: Normalization 3

Normalization (Overview - II) Often performed as a series of tests on a relation to determine whether it satisfies or violates the requirements of a given normal form. Four most commonly used normal forms are first (1NF), second (2NF), third (3NF) and Boyce-Codd (BCNF) normal forms. Based on functional dependencies among the attributes of a relation. A relation can be normalized to a specific form to prevent the possible occurrence of update anomalies. Lecture 2: Normalization 4

Purpose of Normalization Normalizationis a technique for producing a set of suitable relations that support the data requirements of an enterprise. Characteristics of a suitable set of relations include: the minimal number of attributes necessary to support the data requirements of the enterprise; attributes with a close logical relationship are found in the same relation; minimal redundancy with each attribute represented only once with the important exception of attributes that form all or part of foreign keys. Lecture 2: Normalization 5

Purpose of Normalization The benefits of using a database that has a suitable set of relations is that the database will be: easier for the user to access and maintain the data; take up minimal storage space on the computer. Lecture 2: Normalization 6

How Normalization Supports DB Design Lecture 2: Normalization 7

Data Redundancy Major aim of relational database design is to group attributes into relations to minimize data redundancy and reduce file storage space required by base relations. Problems associated with data redundancy are illustrated by comparing the Staff and Branch relations with the StaffBranch relation. StaffBranch: (staffno, sname, position, salary, branchno, baddress) Staff: (staffno, sname, position, salary, branchno) Branch: (branchno, baddress) Lecture 2: Normalization 8

Data Redundancy (An Example) Lecture 2: Normalization 9

Data Redundancy (Explanation to the example) StaffBranch relation has redundant data details of a branch are repeated for every member of staff. In contrast, branch information appears only once for each branch in Branch relation and only branchno is repeated in Staff relation, to represent where each member of staff works. Lecture 2: Normalization 10

Update Anomalies Relations that contain redundant information may potentially suffer from update anomalies. Types of update anomalies include Insertion Duplicate baddress (new staff) Null staffno (new branch) Deletion Some baddress may be lost. Modification Need to update all occurrences of baddress, if it is changed. Lecture 2: Normalization 11

Lossless-join and Dependency Preservation Properties To avoid update anomalies, we decompose a large relation into two or more relations. Two important properties of decomposition. Lossless-join property enables us to find any instance of the original relation from corresponding instances in the smaller relations. Dependency preservation property enables us to enforce a constraint on the original relation by enforcing some constraint on each of the smaller relations. Lecture 2: Normalization 12

Functional Dependency (I) Main concept associated with normalization is functional dependency Functional Dependency Describes the relationship between attributes in a relation. For example, if A and B are attributes of relation R, B is functionally dependent on A (denoted A B), if each value of A in R is associated with exactly one value of B in R. Lecture 2: Normalization 13

Functional Dependency (II) Property of the meaning or semantics of the attributes in a relation. The determinant of a functional dependency refers to the attribute or group of attributes on the left-hand side of the arrow. Diagrammatic representation. determinant Lecture 2: Normalization 14

Functional Dependency (An Example) Lecture 2: Normalization 15

How to Find Functional Dependency (Normalization) One approach to identifying the set of all possible values for attributes in a relation is to more clearly understand the purpose of each attribute in that relation. For example, the purpose of the values held in the staffno attribute is to uniquely identify each member of staff while the purpose of the values held in the snameattribute is to hold the names of members of staff. Main characteristics of functional dependencies used in normalization: have a 1:1 or M:1 relationship between attribute(s) on left and right-hand side of a dependency; hold for all time; are nontrivial. trivial: staffno, sname sname staffno, sname staffno Lecture 2: Normalization 16

Example Functional Dependency that holds for all Time Consider the values shown in staffno and sname attributes of the Staff relation. Based on sample data, the following functional dependencies appear to hold. staffno sname sname staffno However, the only functional dependency that remains true for all possible values for the staffno and snameattributes of the Staff relation is: staffno sname Lecture 2: Normalization 17

Properties: Functional Dependencies Determinants should have the minimal number of attributes necessary to maintain the functional dependency with the attribute(s) on the right hand-side. This requirement is called full functional dependency. Full functional dependencyindicates 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. Lecture 2: Normalization 18

Example Full Functional Dependency Exists in the Staff relation staffno, sname branchno True - each value of (staffno, sname) is associated with a single value of branchno. However, branchno is also functionally dependent on a subset of (staffno, sname), namely staffno. Example above is a partial dependency. The full dependency will be as follows. staffno branchno Lecture 2: Normalization 19

Characteristics of Functional Dependencies Main characteristics of functional dependencies used in normalization: There is a one-to-one relationship between the attribute(s) on the left-hand side (determinant) and those on the right-hand side of a functional dependency. Holds for all time. The determinant has the minimal number of attributes necessary to maintain the dependency with the attribute(s) on the right hand-side. Lecture 2: Normalization 20

Identifying Functional Dependencies Identifying all functional dependencies between a set of attributes is relatively simple if the meaning of each attribute and the relationships between the attributes are well understood. This information should be provided by the enterprise in the form of discussions with users and/or documentation such as the users requirements specification. However, if the users are unavailable for consultation and/or the documentation is incomplete then depending on the database application it may be necessary for the database designer to use their common sense and/or experience to provide the missing information. Lecture 2: Normalization 21

Example -Identifying a set of functional dependencies for the StaffBranch relation Examine semantics of attributes in StaffBranch relation described previously. Assume that position held and branch determine a member of staff s salary. With sufficient information available, identify the functional dependencies for the StaffBranch relation as: staffno sname, position, salary, branchno, baddress branchno baddress baddress branchno branchno, position salary baddress, position salary Lecture 2: Normalization 22

Example -Using sample data to identify functional dependencies Consider the data for attributes denoted A, B, C, D, and E in the Sample relation. Important to establish that sample data values shown in relation are representative of all possible values that can be held by attributes A, B, C, D, and E. Assume true despite the relatively small amount of data shown in this relation. Lecture 2: Normalization 23

Example -Using sample data to identify functional dependencies Lecture 2: Normalization 24

Example -Using sample data to identify functional dependencies Function dependencies between attributes A to E in the Sample relation. A C (fd1) C A (fd2) B D (fd3) A, B E (fd4) Lecture 2: Normalization 25

Identifying the Primary Key for a Relation using Functional Dependencies Main purpose of identifying a set of functional dependencies for a relation is to specify the set of integrity constraints that must hold on a relation. 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. Lecture 2: Normalization 26

Example -Identify Primary Key for StaffBranch Relation StaffBranch relation has five functional dependencies. The determinants are staffno, branchno, baddress, (branchno, position), and (baddress, position). To identify all candidate key(s), identify the attribute (or group of attributes) that uniquely identifies each tuplein this relation. staffno sname, position, salary, branchno, baddress branchno baddress baddress branchno branchno, position salary baddress, position salary Lecture 2: Normalization 27

Example -Identifying Primary Key for StaffBranch Relation All attributes that are not part of a candidate key should be functionally dependent on the key. The only candidate key and therefore primary key for StaffBranch relation, is staffno, as all other attributes of the relation are functionally dependent on staffno. Moreover there is one more primary, that is branchno. It will be the primary key for Branch relation. Lecture 2: Normalization 28

Example -Identifying Primary Key for Sample Relation Sample relation has four functional dependencies. The determinants in the Sample relation are A, B, C, and (A, B). However, the only determinant that functionally determines all the other attributes of the relation is (A, B). (A, B) is identified as the primary key for this relation. A C (fd1) C A (fd2) B D (fd3) A, B E (fd4) Lecture 2: Normalization 29

The Process of Normalization Formal technique for analyzing a relation based on its primary key and the functional dependencies between the attributes of that relation. Often executed as a series of steps. Each step corresponds to a specific normal form, which has known properties. As normalization proceeds, the relations become progressively more restricted (stronger) in format and also less vulnerable to update anomalies. Lecture 2: Normalization 30

Relationship Between Normal Forms Lecture 2: Normalization 31

Unnormalized Form (UNF) and First Normal Form (1NF) Unnormalized Form (UNF) A table that contains one or more repeating groups. To create an unnormalized table Transform the data from the information source (e.g. form) into table format with columns and rows. First Normal Form (1NF) A relation in which the intersection of each row and column contains one and only one value. Lecture 2: Normalization 32

UNF to 1NF Identifythe repeating group(s) in the unnormalized table which repeats for the key attribute(s). Remove the repeating group by Entering appropriate data into the empty columns of rows containing the repeating data ( flattening the table). OR Nominate an attribute or group of attributes to act as the primary key for the unnormalized table and then placingthe repeating data along with a copy of the original key attribute(s) into a separate relation. Lecture 2: Normalization 33

UNF to 1NF (An Example Form) Lecture 2: Normalization 34

UNF to 1NF (An Example Transformation Result) UNF 1NF Lecture 2: Normalization 35

UNF to 1NF (An Example Alternative Transformation Result) UNF 1NF Lecture 2: Normalization 36

Second Normal Form (2NF) Based on the concept of full functional dependency. Full functional dependency indicates that A and B are attributes of a relation, B is fully dependent on A if B is functionally dependent on A but not on any proper subset of A. 2NF A relation that is in 1NF and every nonprimary-key attribute is fully functionally dependent on the primary key. Lecture 2: Normalization 37

1NF to 2NF Identify the primary key for the 1NF relation. Identify the functional dependencies in the relation. If partial dependencies exist on the primary key remove them by placing then in a new relation along with a copy of their determinant. Lecture 2: Normalization 38

1NF to 2NF (An Example Functional Dependency) Lecture 2: Normalization 39

1NF to 2NF (An Example Transformation Result) 1NF 2NF Lecture 2: Normalization 40

Third Normal Form (3NF) Based on the concept of transitive dependency. A, B and C are attributes of a relation such that if A B and B C, then C is transitively dependent on A through B. (Provided that A is not functionally dependent on B or C). 3NF A relation that is in 1NF and 2NF and in which no non-primary-key attribute is transitively dependent on the primary key. Lecture 2: Normalization 41

2NF to 3NF Identify the primary key in the 2NF relation. Identify functional dependencies in the relation. If transitive dependencies exist on the primary key remove them by placing them in a new relation along with a copy of their dominant. Second normal form (2NF) A relation that is in 1NF and every non-primary-key attribute is fully functionally dependent on any candidate key. Third normal form (3NF) A relation that is in 1NF and 2NF and in which no nonprimary-key attribute is transitively dependent on any candidate key. Lecture 2: Normalization 42

2NF to 3NF (An Example Transformation Result) 2NF 3NF Lecture 2: Normalization 43

Summary Result of Normalization (I) Lecture 2: Normalization 44

Summary Result of Normalization (II) UNF 3NF Lecture 2: Normalization 45

Boyce-CoddNormal Form (BCNF) Based on functional dependencies that takes into account all candidate keys in a relation. However, BCNF also has additional constraints compared with general definition of 3NF. For a relation with only one candidate key, 3NF and BCNF are equivalent. A relation is in BCNF, if and only if every determinant is a candidate key. Violation of BCNF may occur in a relation that contains two (or more) composite keys which overlap and share at least one attribute in common. Lecture 2: Normalization 46

Difference between 3NF and BCNF 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. Every relation in BCNF is also in 3NF. However, relation in 3NF may not be in BCNF. Lecture 2: Normalization 47

3NF to BCNF Identify all candidate keys in the relation. Identify all functional dependencies in the relation. If functional dependencies exists in the relation where their determinants are not candidate keys for the relation, remove the functional dependencies by placing them in a new relation along with a copy of their determinant. Lecture 2: Normalization 48

3NF to BCNF (An Example) 3NF BCNF Lecture 2: Normalization 49

Review of Normalization (Original Form) Lecture 2: Normalization 50

Review of Normalization (UNF to 1NF) UNF 1NF Lecture 2: Normalization 51

Review of Normalization (Functional Dependency) Lecture 2: Normalization 52

Review of Normalization (Final Result) StaffPropertyInspection (propertyno, idate, itime, paddress, comments, staffno, sname, carreg) PropertyInspection(propertyNo, idate, itime, comments, staffno, sname, carreg) Staff (staffno, sname) StaffCat (staffno, idate, carreg) PropertyInspect (propertyno, idate, itime, comments, staffno, carreg) Property (propertyno, paddress) Inspection (propertyno, idate, itime, comments, staffno) Lecture 2: Normalization 53

Fourth Normal Form (4NF) Although BCNF removes anomalies due to functional dependencies, another type of dependency called a multi-valued dependency (MVD) can also cause data redundancy. MVDs in a relation are due to first normal form (1NF), which disallows an attribute in a row from having a set of values. Lecture 2: Normalization 54

Fourth Normal Form (4NF) 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 values for C. However, the set of values for B and C are independent of each other. MVD between attributes A, B, and C in a relation using the following notation: A > B A > C A 4NF relation that is in Boyce-Codd Normal Form (BCNF) and contains no MVDs. BCNF to 4NF involves the removal of the MVD from the relation by placing the attribute(s) in a new relation along with a copy of the determinant(s). Lecture 2: Normalization 55

BCNF to 4NF (An Example) BCNF 4NF Lecture 2: Normalization 56

Fifth Normal Form (5NF) A relation decomposed into two relations must have lossless-join property, which ensures that no spurious tuples are generated when relations are reunited through a natural join. However, there are requirements to decompose a relation into more than two relations. Although rare, these cases are managed by join dependency and fifth normal form (5NF). 5NF A relation that has no join dependency. Lecture 2: Normalization 57

Fifth Normal Form (5NF) (An Example) Consider the following statement: If Property PG4 requires Bed Supplier S2 supplies property PG4 Supplier S2 provides Bed Then Supplier S2 provides Bed for property PG4 To identify this type of constraint on the PropertyItemSupplierrelation, use 5NF Lecture 2: Normalization 58

4NF to 5NF (An Example) INCORRECT 4NF 5NF Lecture 2: Normalization 59

Exercise I Normalize the following relation Lecturer_Course_Rel(DID, Dept, LID, Lname, Lroom, CID, CName, Credit, DW, LTime, PID, PType) DID Dept. LID LName CID CName Credit LRoom LTime DW PID PType 101 Intro. To Comp 2-3 101 13:00-16:00 Mon. 01 Sony 0001 Minger 105 Prog. Lang. 3-0 101 9:00-10:20 Tue. 02 Panasonic 10 IT 003 Math II 2-0 102 10:40-12:00 Thu. 04 Phillips 0002 Craven 105 Prog. Lang. 3-0 106 14:40-16:00 Wed. 02 Panasonic 003 Math II 2-0 201 13:00-14:20 Thu. 01 Sony 0101 Taylor 11 ME 208 Fluid Dynamics 2-3 101 9:00-12:00 Mon 01 Sony 0102 Chen 208 Fluid Dynamics 2-3 202 14:40-16:00 Fri. 04 Phillips 0201 Ahmed 307 Concrete Eng. 2-3 301 13:00-14:20 Tue. 05 Sharp 12 CE 0202 Brown 304 Hydraulics 3-0 106 9:00-10:20 Wed. 02 Panasonic Where, DID: Department Identifier Dept: Department Name LID: Lecture Identifier Lecturer:Lecturer Name LRoom: Lecture Room CID: Course Identifier Course: Course Name LTime: Lecture Time DW: Day in Week PID: Projector Identifier PType: Projector Type Lecture 2: Normalization 60

Exercise II Normalize the following form. ABC Hospital Patient Medication Form Date: 23/03/2004 Full Name: Peter Pakinson Bed Number: 1205 Drug No. Name Description Dosage Ward Number: Ward 11 Ward Name: Orthopaedic Method of Admin Units per day Start Date Finish Date 10223 Morphine Pain Killer 10 mg/ml Oral 50 24/03/04 24/04/04 10334 Tetracyclene Antibiotic 0.5 mg/ml IV 10 24/03/04 24/05/04 10223 Morphine Pain Killer 10 mg/ml Oral 10 25/04/04 28/05/04 Created By: Ms Patana Created Date: 23/03/04 Lecture 2: Normalization 61

Exercise III Normalize the following form. Staff No. Doctor Name Patient Name App. Date App. Time Room Nurse Fee 102 Tony Smith Kingston 24/05/04 10:00 R03 Jerry 1000 105 Mary Mind Mice 22/05/04 13:00 R05 Jennifer 2000 104 John Robin Mice 28/05/04 15:00 R34 Mary 2000 102 Tony Smith Susan 28/05/04 9:00 R34 Mary 2400 101 Helen Peter Jim 26/05/04 11:00 R03 Nancy 1200 Lecture 2: Normalization 62

Exercise IV Normalize the following form. CDID Movie Name Artist Producer Barcode Member ID Rental Date Fee 1001 Harry Plotter (I) John Sony 7234 M234 12/02/05 15 1205 13 Ghosts Phillip Paramou nt 3454 M231 15/01/05 20 2043 Harry Plotter (I) John Sony 2344 M214 02/02/05 20 3113 Armageddon Nick Paramou nt 2342 M156 14/06/04 30 3113 Armageddon Nick Paramou nt 2342 M234 13/07/04 20 Lecture 2: Normalization 63

Lecture 2: Normalization 64 Exercise V Find functional dependency/normalize the following table. p w j g d a q w l h e a r z k i f a p w j g d b s w m g e b s z m h f b u w o i d c r z k i f c q w l h e c F E D C B A