La aplicación de las definiciones generales de 2NF y 3NF puede identificar redundancia adicional causada por dependencias que violan una o más claves candidatas. Sin embargo, a pesar de estas restricciones adicionales, aún pueden existir dependencias que provocarán la presencia de redundancia en las relaciones 3NF. Esta debilidad en 3FN resultó en la presentación de una forma normal más fuerte llamada Forma Normal de Boyce-Codd (Codd, 1974).
Aunque 3NF es una forma normal adecuada para la base de datos relacional, esta forma normal (3NF) puede no eliminar el 100 % de redundancia debido a la dependencia funcional X?Y, si X no es una clave candidata de una relación dada. Esto se puede resolver mediante la forma normal de Boyce-Codd (BCNF).
Forma normal de Boyce-Codd (BCNF):
la forma normal de Boyce-Codd (BCNF) se basa en dependencias funcionales que tienen en cuenta todas las claves candidatas en una relación; sin embargo, BCNF también tiene restricciones adicionales en comparación con la definición general de 3NF.
Una relación está en BCNF iff, X es superclave para cada dependencia funcional (FD) X?Y en una relación dada.
En otras palabras,
Una relación está en BCNF, si y solo si, cada determinante es una clave candidata de Forma (BCNF).
Nota: para probar si una relación está en BCNF, identificamos todos los determinantes y nos aseguramos de que sean claves candidatas.
Te encontraste con una jerarquía similar conocida como Forma Normal de Chomsky en Teoría de la Computación. Ahora, estudie cuidadosamente la jerarquía anterior. Se puede inferir que toda relación en BCNF también está en 3NF . Para decirlo de otra manera, una relación en 3FN no necesita estar en FNBC. Reflexiona sobre esta declaración por un momento.
Para determinar la forma normal más alta de una relación R dada con dependencias funcionales, el primer paso es comprobar si se cumple la condición BCNF. Si se encuentra que R está en FNBC, se puede deducir con seguridad que la relación también está en 3FN, 2FN y 1FN como muestra la jerarquía. El 1NF tiene la restricción menos restrictiva: solo requiere una relación R para tener valores atómicos en cada tupla. El 2NF tiene una restricción ligeramente más restrictiva.
Lea esto para una comprensión clara de 2NF
. El 3NF tiene una restricción más restrictiva que las dos primeras formas normales, pero es menos restrictiva que la BCNF. De esta manera, la restricción aumenta a medida que descendemos en la jerarquía.
Ejemplo-1:
encuentre la forma normal más alta de una relación R (A, B, C, D, E) con FD establecida como:
{ BC->D, AC->BE, B->E }
Explicación:
- Paso 1: Como podemos ver, (AC)+ ={A, C, B, E, D} pero ninguno de sus subconjuntos puede determinar todos los atributos de la relación, por lo que AC será la clave candidata. A o C no se pueden derivar de ningún otro atributo de la relación, por lo que solo habrá 1 clave candidata {AC}.
- Paso 2: Los atributos principales son aquellos atributos que forman parte de la clave candidata {A, C} en este ejemplo y otros no serán principales {B, D, E} en este ejemplo.
- Paso 3: La relación R está en la primera forma normal, ya que un DBMS relacional no permite atributos multivaluados o compuestos.
La relación está en la segunda forma normal porque BC->D está en la segunda forma normal (BC no es un subconjunto propio de la clave candidata AC) y AC->BE está en la segunda forma normal (AC es la clave candidata) y B->E está en la segunda forma normal (B no es un subconjunto propio de la clave candidata AC).
La relación no está en la 3ra forma normal porque en BC->D (ni BC es una superclave ni D es un atributo principal) y en B->E (ni B es una superclave ni E es un atributo principal) pero para satisfaga la 3ra normal para, ya sea LHS de un FD debe ser super clave o RHS debe ser atributo principal. Entonces, la forma normal más alta de relación será la segunda forma normal.
Nota – Un atributo principal no puede depender transitivamente de una clave en la relación BCNF.
Considere estas dependencias funcionales de alguna relación R,
AB ->C
C ->B
AB ->B
Supongamos que se sabe que la única clave candidata de R es AB. Se requiere una observación cuidadosa para concluir que la dependencia anterior es una Dependencia Transitiva ya que el atributo principal B depende transitivamente de la clave AB a C. Ahora, la primera y la tercera FD están en BCNF ya que ambas contienen la clave candidata (o simplemente KEY) en sus lados izquierdos. La segunda dependencia, sin embargo, no está en FNBC pero definitivamente está en 3NF debido a la presencia del atributo principal en el lado derecho. Entonces, la forma normal más alta de R es 3NF ya que los tres FD satisfacen las condiciones necesarias para estar en 3FN.
Ejemplo-2:
Por ejemplo, considere la relación R(A, B, C)
A -> BC, B -> A
A y B son ambas súper claves, por lo que la relación anterior está en BCNF.
Nota:
la descomposición de BCNF siempre puede no ser posible con la preservación de la dependencia , sin embargo, siempre satisface la condición de unión sin pérdidas . Por ejemplo, relación R (V, W, X, Y, Z), con dependencias funcionales:
V, W -> X Y, Z -> X W -> Y
No satisfaría la dependencia preservando la descomposición de BCNF.
Nota: a veces, las redundancias todavía están presentes en una relación BCNF, ya que no siempre es posible eliminarlas por completo.
Refiérase a:
4ta y 5ta forma normal y encontrar la forma normal más alta de una relación dada .
Publicación traducida automáticamente
Artículo escrito por Mithlesh Upadhyay y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA