Articulo de referencia

Forma normal de clave elemental

La forma normal de clave elemental ( EKNF ) es una mejora sutil de la tercera forma normal ; por lo tanto, las tablas EKNF están en 3NF por definición. Esto ocurre cuando hay má...

La forma normal de clave elemental ( EKNF ) es una mejora sutil de la tercera forma normal ; por lo tanto, las tablas EKNF están en 3NF por definición. Esto ocurre cuando hay más de una clave compuesta única y estas se superponen. En tales casos, puede haber información redundante en la(s) columna(s) superpuesta(s).

Historia

EKNF fue definida por Carlo Zaniolo en 1982. [ 1 ]

Definición

Una tabla está en EKNF si y solo si todas sus dependencias funcionales elementales comienzan en claves completas o terminan en atributos de clave elementales. Para cada dependencia funcional completa no trivial de la forma X→Y, X es una clave o Y es (una parte de) una clave elemental. [ 1 ]

En esta definición, una dependencia funcional elemental es una dependencia funcional completa (una dependencia funcional no trivial X → A tal que no existe ninguna dependencia funcional X' → A que también se cumpla siendo X' un subconjunto estricto de X), y una clave elemental es una clave X para la cual existe un atributo A tal que X → A es una dependencia funcional elemental.

Ejemplo

Consideremos el siguiente escenario: existe un proceso de pedido de gafas en el que se deben especificar la montura y los cristales. El producto de los cristales debe ser un cristal y el producto de la montura debe ser una montura. Para que se cumpla esta restricción, se añade el tipo de producto a la fila correspondiente a cada producto.

En el escenario anterior, existiría una restricción en FrameProductType y LensProductType, donde deben ser Frame y Lens respectivamente. Además, habría una relación de clave externa con Product en Id y productType para FrameId, FrameProductType y LensId, LensProductType respectivamente. Para que esta relación de clave externa funcione, se debe crear una clave elemental en la tabla Product en Id y Type. Esto generalmente se logra mediante una restricción de clave única. Sin esta relación y restricción, se podría seleccionar una lente para la montura y una montura para la lente.

Notas

  1. 1 2 Zaniolo, Carlo (septiembre de 1982). "Una nueva forma normal para el diseño de esquemas de bases de datos relacionales" (PDF) . ACM Transactions on Database Systems . 7 (3): 489– 499. doi : 10.1145/319732.319749 . S2CID 15790238 . 

Referencias

  • Halpin, TA; Morgan, Antony J.; Morgan, Tony. Modelado de información y bases de datos relacionales .
  • Date, CJ "Forma normal de clave elemental (EKNF)". Diseño de bases de datos y teoría relacional .
  • Celko, Joe. SQL para expertos: Programación SQL avanzada (3.ª  ed.).