0

When converting a schema to BCNF or 3NF form, are they guaranteed to be lossless i.e if a relational schema R, having a dependency violating the condition of BCNF or 3NF, is decomposed into R1 and R2 so that R1 and R2 are in BCNF or 3NF will R1 and R2 always satisfy the following:

R1 ⋈ R2 = R
vibi
  • 41
  • 3
  • I guess that's a question of definitions. Certainly some would say that a lossy schema transformation is not a valid decomposition. The normalization of the schema(s) resulting from a general transformation does not inherently speak to the lossiness of that transformation. – John Bollinger Mar 17 '15 at 16:26
  • Does that mean converting into BCNF or 3NF may cause loss of information if compared to original schema? – vibi Mar 17 '15 at 17:43
  • As an extreme example, I can transform any schema to the empty schema to achieve perfect normalization, at the cost of complete data loss. I don't know of anyone who would consider that a valid "decomposition", however. My point is that whether a "decomposition" can be lossy is part of the *definition* of that term, or at least inhgerent in it. I think most people would say that no lossy transformation is a valid decomposition. – John Bollinger Mar 17 '15 at 17:49
  • Thanks, for clarifying with example. – vibi Mar 17 '15 at 17:54

1 Answers1

0

It is guaranteed that you can always have a lossless-join and dependency-preserving 3NF decomposition.

It is also guaranteed to have a lossless-join BCNF decomposition but dependency-preserving is not guaranteed.

Teng Long
  • 435
  • 6
  • 14