Boyce-codd normal form (bcnf), Database Management System

Assignment Help:

Boyce-Codd Normal Form (BCNF)

The relation NEWSTUDENT (Enrolmentno, Sno, Sname, Cname, Cno,) has every attributes participating in candidate keys as all the attributes are assumed to be unique. We thus had the following candidate keys.

(Enrolmentno, Cno)

(Enrolmentno, Cname)

(Sname, Cno)

(Sname, Cname)

As the relation has no non-key attributes, the relation is in 2NF and as well in 3NF. Though, the relation suffers from the anomalies (please check it yourself by making the relational instance of the NEWSTUDENT relation).

The complexity in this relation is being caused by dependence within the candidate keys.

Definition: A relation is in BCNF, if it is in 3NF and if each determinant is a candidate key.

  • A determinant is the left side of an FD
  • Most relations that are in 3NF are also in BCNF. A 3NF relation is not in

BCNF if all the following conditions apply.

(a)     The candidate keys in the relation are composite keys.

(b)     There is more than one overlapping candidate keys in the relation and a number of attributes in the keys are overlapping and some are not overlapping.

(c)      There is a FD from the non-overlapping attribute(s) of single candidate key to non-overlapping attribute(s) of other candidate key.

Let us recall the NEWSTUDENT relation:

NEWSTUDENT (Enrolmentno, Sname, Sno,  Cno, Cname) Set of FDs:

Enrolmentno     →           Sname              (1)

Sname  →                       Enrolmentno     (2)

Cno       →                      Cname              (3)

Cname  →                      Cno                   (4)

The relation even though in 3NF, but is not in BCNF and can be decomposed on any one of the FDs in (1) & (2); and any one of the FDs in (3) & (4) as:

STUD1 (Enrolmentno, Sname) COUR1 (Cno, Cname)

The third relation that will join the two relation will be:

ST_CO(Enrolmentno, Cno)

Since this is a slightly complex form, let us give one more example, for BCNF. Consider for example, the relation:

ENROL(Enrolmentno, Sname, Cno, Cname, Dateenrolled)

Let us suppose that the relation has the following candidate keys:

(Enrolmentno, Cno)

(Enrolmentno, Cname)

(Sname, Cno)

(Sname, Cname)

(We have supposed Cname and Sname are unique identifiers).

The relation has the following set of dependencies:

Enrolmentno     →    Sname

Sname             →     Enrolmentno

Cno                  →     Cname

Cname             →     Cno

Enrolmentno, Cno     →  Dateenrolled

The relation is in 3NF but not in BCNF as there are dependencies. The relation suffers from all anomalies. Please draw the relational instance and checks these troubles. The BCNF decomposition of the relation would be:

STUD1 (Enrolment no, Sname)

COU1 (Cno, Cname)

ENROL1 (Enrolmentno, Cno, Dateenrolled)

We now have a relation that only has information about students, another only about subjects and the third only about relationship enrolls.


Related Discussions:- Boyce-codd normal form (bcnf)

Database manager, Database Manager It is the interface among low-leve...

Database Manager It is the interface among low-level data, queries and application programs. Databases typically need a large amount of storage space. It is kept on disks, as

What is mysql, What is MySQL? MySQL is a relational database management...

What is MySQL? MySQL is a relational database management system which has eleven million installations. It can be used for both Linux and Window. Managing database includes add

Prepare a data flow diagram for computing the volume, Prepare a data flow d...

Prepare a data flow diagram for computing the volume and surface area of a cylinder. Inputs are the height and radius of the cylinder. Outputs are the volume and surface area of th

Er model, There are a number of possible solutions to the open ended brief....

There are a number of possible solutions to the open ended brief. One of the simple ones is shown here without the PKs and FKs. It is important to think of how a number of tasks

Create a new user-data control, Create a new user : CREATE USER IDENTI...

Create a new user : CREATE USER IDENTIFIED BY Example: //CREATE USER MCA12 IDENTIFIED BY W123 Grant: It is used to give database access permission to users. It is of

2phase locking, we need example of 2phase locking

we need example of 2phase locking

Describe drop table command or cascade of sql, Describe DROP TABLE command ...

Describe DROP TABLE command of SQL along with both the options - CASCADE and RESTRICT. DROP TABLE command - This command drops the specified table. Dropping a table also dro

Organic compounds, #question.explain diversity and magnitude of organic com...

#question.explain diversity and magnitude of organic compounds and general properties?

What is conceptual schema, What is conceptual schema? The schemas at th...

What is conceptual schema? The schemas at the view level are known as subschema that describe dissimilar views of the database.

Types of attributes, Attributes attached to an entity can be of various typ...

Attributes attached to an entity can be of various types. Simple The attribute that cannot be further separated into smaller parts and shows the basic meaning is known as a

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