-1

Assume that the relation is obtained through decomposition from a relation with attributes ABCDEFGHI and that dependencies over ABCDEFGHI are listed below.

R(A,B,F) B->E A->F

We need to convert this relation into BCNF

What i have done till now is

R1(AB) R2(AF) R3(BE)

Is there anything more I should do? Is this proper BCNF or am I missing something?

Mike Sherrill 'Cat Recall'
  • 91,602
  • 17
  • 122
  • 185
sania00
  • 1
  • 1
  • Re "is this right": Show the steps of your work following your reference/textbook, with justification--we want to check your work but not redo it & we need your choices when an algorithm allows them & otherwise we can't tell you where you went wrong (or right). See hits googling 'stackexchange homework. – philipxy Mar 27 '19 at 20:42

1 Answers1

0

This answer follows from the edited question, under the following hypotheses:

  1. the original relation is R(ABCDEFGHI)
  2. a cover of the functional dependencies holding on it is {B->E, A->F}

Of course if my hypotheses are wrong the answer is wrong!

In this case:

  1. the only candidate key of the original relation is ABCDGHI;
  2. in the decomposed relation R1(ABF) the only non-trivial dependency that holds is A -> F, so the relation has the only candidate key AB;
  3. the relation is not in BCNF, and a decomposition in BCNF is {R2(AF), R3(AB)}

Note that you cannot decompose a relation adding an extraneous attribute, like E in your decomposition.

Renzo
  • 26,848
  • 5
  • 49
  • 61
  • Thank you for your input sir.But i'm a bit confused about it not being BCNF. Is there an algorithm I could follow to convert it to bcnf? – sania00 Mar 27 '19 at 11:59
  • 1
    There are algorithm described more or less formally in books on databases. A sketch of an algorithm is shown [here](https://stackoverflow.com/a/42803509/2382734). – Renzo Mar 27 '19 at 14:34