The third normal form (3nf), Database Management System

Assignment Help:

The Third Normal Form (3NF)

Even though, transforming a relation that is not in 2NF into a number of relations that are in 2NF take out many of the anomalies, it does not necessarily take out all anomalies. Therefore, further Normalisation is sometimes required to ensure further removal of anomalies. These anomalies occur because a 2NF relation may have attributes that are not directly linked to the candidate keys of the relation.

Definition: A relation is in third normal form, if it is in 2NF and each non-key attribute of the relation is non-transitively dependent on every candidate key of the relation.

But what is non-transitive dependence?

Let A, B and C be 3 attributes of a relation R such that A Æ B and B Æ C. By these FDs, we might be derives A Æ C. This dependence A Æ C is transitive.

Now, let us reconsider the relation 2NF (b)

COU_INST (Cno, Cname, Instruction, Office)

Suppose that Cname is not original and thus Cno is the only candidate key. The following functional dependencies exists

 

Cno       →       Instructor            (2 (a))

Instructor             →          Office    (3)

Cno        →            Office    (This is transitive dependency)

 

We had derived Cno  → Office from the functional dependencies 2(a) and (3) for decomposition to 2NF. The relation is though not in 3NF since the attribute 'Office' is not directly dependent on attribute 'Cno' but is transitively dependent on it and should, thus, be decomposed as it has all the anomalies. The primary complexity in the relation above is that an instructor may be responsible for various subjects, needs one tuple for each course. Thus, his/her office number will be repeated in each tuple. This leads to all the troubles such as update, insertion, and deletion anomalies. To overcome these problems we require to decompose the relation 2NF(b) into the following two relations:

COURSE (Cno, Cname, Instructor) INST (Instructor, Office)

Please note these two relations and 2NF (a) and 2NF (c) are already in 3NF. Therefore, the relation STUDENT in 3 NF would be:

STUDENT1 (Enrolmentno, Sname, Address) COURSE (Cno, Cname, Instructor)

INST (Instructor, Office) COURSE_STUDENT (Enrolmentno, Cno)

The 3NF is generally quite adequate for most relational database designs. There are though some cases where a relation may be in 3 NF, but have the anomalies.

For example, let consider the relation NEWSTUDENT (Enrolmentno, Sno, Sname, Cno, Cname) having the set of FDs:

 

 Enrolmentno     →         Sname

Sname     →            Enrolmentno

Cno        →         Cname

Cname  →         Cno

The relation is in 3NF. Why? the functional diagram for this relation given in Figure please refer this.

                  1434_The third normal form (3nf).png

 

                                                                  Key attributes

                                  Figure: Functional Diagram for NEWSTUDENT relation

 Every attributes of this relation are part of candidate keys, but have dependency among the non-overlapping portions of overlapping candidate keys. Therefore, the 3NF may not eliminate all the inconsistencies and redundancies. Therefore, there is a need of further Normalisation using the BCNF.


Related Discussions:- The third normal form (3nf)

Define the query optimisation, Define the Query optimisation The query ...

Define the Query optimisation The query parser commonly generates a standard initial tree to correspond to an SQL query, with no doing any optimization. Such type of a canonica

The extract statement do in extract datasets, What does the extract stateme...

What does the extract statement do in extract datasets? The data is written to virtual memory by extract commands.

#cursor, #what is cursor its uses ? Explain it

#what is cursor its uses ? Explain it

Secondary indexes, Secondary Indexes Let consider the student database ...

Secondary Indexes Let consider the student database and its clustering index and primary (only one will be applicable at a time). Now consider the state when the database is to

What do you understand by acid, What do you understand by ACID? - ACID...

What do you understand by ACID? - ACID (Atomicity Consistency Isolation Durability) is a quality sought after in a reliable database. Here's the relevance of each quality:

Write short notes on domain relational calculus, Write short notes on domai...

Write short notes on domain relational calculus   The domain relational calculus uses domain variables that take on values from an attribute domain rather than values for whole

Determine advantages of merging an association into a class, What are the a...

What are the advantages and disadvantages of merging an association into a class?  Advantages: i)  Less number of tables ii) Faster performance due to the fewer tables

Describe disk manager and their work, Describe disk manager and their work?...

Describe disk manager and their work? Disk Manager: Responsible for fetching data regulated through file Manager from disk storage within Main memory and deciding what data to

Create a database for their customers, The ABC Bank authority now wants to ...

The ABC Bank authority now wants to create a database for their customers. So you are requested to modify your program of Assignment A3 as follows. The main program first displa

Normalization, Introduction In large projects, we can have many different ...

Introduction In large projects, we can have many different companies working together. Generally, the project or contract is awarded to one company (Principal Contractor), which

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd