Date: Fri, 01 Aug 2008 08:49:01 -0700
> Hi all,
> the following is the definition is the definition of BCNF , which i
> saw in a schaum series book
> 1) The relation is 1 N.F
> 2) for every functional dependency of the form X -> A , we have
> either A C X or X is a super key of r. in other words,
> every functional dependency is either a trivial dependency or in
> the case that the functional dependency is not trivial then X must
> be a super key.
> now my questions are as follows
> we know that 2-ND normal form is all about separating partial
> dependencies and full dependencies.third normal form is all about
> removing transitive dependencies, in these lines can any one give
> simple/ easy to understand method/explanation for converting a
> relation in 3rd normal form to BCNF
> 2) how correct is the following definition of transitive
> transitive dependencies
> assume that A,B, and C are the set of attributes of a relation(R).
> further assume that the following
> functional dependencies are satisfied simultaneously : A -> B , B -/-
>> A, B -> C , and C -/-> A and A -> C
> observe that C -> B is neither prohibited nor required. if all these
> conditions are true, we will say that attribute C is transitively
> dependent on attribute on A
Personally I prefer the following definition:
Boyce Codd Normal Form (BCNF) is a further refinement of 3NF. In his later writings Codd refers to BCNF as 3NF. A row is in Boyce Codd normal form if, and only if, every determinant is a candidate key. Most entities in 3NF are already in BCNF.
BCNF covers very specific situations where 3NF misses inter-dependencies between non-key (but candidate key) attributes. Typically, any relation that is in 3NF is also in BCNF. However, a 3NF relation won't be in BCNF if (a) there are multiple candidate keys, (b) the keys are composed of multiple attributes, and (c) there are common attributes between the keys.
-- Daniel A. Morgan Oracle Ace Director & Instructor University of Washington damorgan_at_x.washington.edu (replace x with u to respond) Puget Sound Oracle Users Group www.psoug.orgReceived on Fri Aug 01 2008 - 10:49:01 CDT