Diferencia entre 3NF y BCNF

3NF vs BCNF

La normalización es un proceso que se lleva a cabo para minimizar las redundancias que están presentes en los datos en las bases de datos relacionales. Este proceso dividirá principalmente las tablas grandes en tablas más pequeñas con menos redundancias. Estas tablas más pequeñas se relacionarán entre sí a través de relaciones bien definidas. En una base de datos bien normalizada, cualquier alteración o modificación en los datos requerirá la modificación de una sola tabla. La tercera forma normal (3NF) fue presentada en 1971 por Edgar F. Codd, quien también es el inventor del modelo relacional y el concepto de normalización. La forma normal de Boyce-Codd (BCNF) fue introducida en 1974 por Codd y Raymond F. Boyce.

Que es 3NF?

3NF es la tercera forma normal utilizada en la normalización de bases de datos relacionales. De acuerdo con la definición de Codd, se dice que una tabla está en 3NF, solo si esa tabla está en la segunda forma normal (2NF), y todos los atributos de la tabla que no pertenecen a una clave candidata deben depender directamente de Cada clave candidata de esa mesa. En 1982, Carlo Zaniolo produjo una definición expresada de manera diferente para 3NF. Las tablas que cumplen con el 3NF generalmente no contienen anomalías que se producen al insertar, eliminar o actualizar registros en la tabla.

¿Qué es BCNF??

BCNF (también conocida como 3.5NF) es otra forma normal utilizada en la normalización de bases de datos relacionales. Se introdujo para capturar algunas de las anomalías que no son abordadas por el 3NF. Se dice que una tabla está en BCNF, si y solo si, para cada una de las dependencias de la forma A → B que no son triviales, A es una superclave. La descomposición de una tabla que no está en la forma normal de BCNF no garantiza la producción de tablas en la forma de BCNF (al tiempo que se conservan las dependencias que estaban presentes en la tabla original).

¿Cuál es la diferencia entre 3NF y BCNF??

Tanto 3NF como BCNF son formas normales que se utilizan en bases de datos relacionales para minimizar las redundancias en las tablas. En una tabla que se encuentra en la forma normal de BCNF, para cada dependencia funcional no trivial de la forma A → B, A es una superclave, mientras que una tabla que cumple con 3NF debe estar en la 2NF, y todas atributo debe depender directamente de cada clave candidata de esa tabla. BCNF se considera una forma normal más fuerte que la 3NF y se desarrolló para capturar algunas de las anomalías que la 3NF no pudo capturar. La obtención de una tabla que cumpla con el formulario BCNF requerirá la descomposición de una tabla que se encuentra en la 3NF. Esta descomposición dará lugar a operaciones de unión adicionales (o productos cartesianos) al ejecutar consultas. Esto aumentará el tiempo de cálculo. Por otro lado, las tablas que cumplen con BCNF tendrían menos redundancias que las tablas que solo cumplen con 3NF. Además, la mayoría de las veces, es posible obtener una tabla que cumpla con 3NF sin obstaculizar la conservación de la dependencia y la unión sin pérdidas. Pero esto no siempre es posible con BCNF..