Diferencia entre 3NF y BCNF

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 bases de datos relacionales. Este proceso dividirá principalmente tablas grandes en tablas más pequeñas con menos redundancias. Estas tablas más pequeñas estarán relacionadas 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á modificar solo una tabla. La tercera forma normal (3NF) fue introducida en 1971 por Edgar F. Codd, quien también es el inventor del modelo relacional y el concepto de normalización. Boyce-Codd Normal Form (BCNF) fue introducido en 1974 por Codd y Raymond F. Boyce.

Que es 3NF?

3NF es la tercera forma normal utilizada en la normalización de la base de datos relacional. De acuerdo con la definición del CODD, se dice que una tabla está en 3NF, si y solo si, esa tabla está en la segunda forma normal (2NF), y cada atributo en la tabla que no pertenece a una clave candidata debe depender directamente de Cada clave candidata de esa tabla. 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 ocurren al insertar, eliminar o actualizar registros en la tabla.

Que es bcnf?

Bcnf (también conocido como 3.5nf) es otra forma normal utilizada en la normalización de la base de datos relacional. Se introdujo para capturar algunas 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 un súper clave. La descomposición de una tabla que no está en la forma normal BCNF no garantiza la producción de tablas en la forma BCNF (al tiempo que preserva 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 está en la forma normal BCNF, para cada dependencia funcional no trivial de la forma A → B, A es una superplaz, mientras que una tabla que cumple con 3NF debería estar en el 2NF, y cada no prima El atributo debe depender directamente de cada clave candidata de esa tabla. BCNF se considera una forma normal más fuerte que el 3NF y se desarrolló para capturar algunas de las anomalías que no podrían ser capturadas por 3NF. Obtener una tabla que cumpla con el formulario BCNF requerirá descomponer una tabla que esté en el 3NF. Esta descomposición dará como resultado operaciones de unión adicionales (o productos cartesianos) al ejecutar consultas. Esto aumentará el tiempo computacional. Por otro lado, las tablas que cumplen con BCNF tendrían menos despidos 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 preservación de la dependencia y la unión sin pérdidas. Pero esto no siempre es posible con bcnf.