Tabla de contenido:
- Definición: ¿Qué significa la segunda forma normal (2NF)?
- Techopedia explica la segunda forma normal (2NF)
Definición: ¿Qué significa la segunda forma normal (2NF)?
La segunda forma normal (2NF) es el segundo paso para normalizar una base de datos. 2NF se basa en la primera forma normal (1NF).
La normalización es el proceso de organizar datos en una base de datos para que cumpla dos requisitos básicos:
- No hay redundancia de datos (todos los datos se almacenan en un solo lugar).
- Las dependencias de datos son lógicas (todos los elementos de datos relacionados se almacenan juntos).
Una tabla 1NF está en forma 2NF si y solo si todos sus atributos no primos dependen funcionalmente de la totalidad de cada clave candidata.
Techopedia explica la segunda forma normal (2NF)
Después de cumplir con los requisitos de 1NF, 2NF requiere que el diseñador de la base de datos haga lo siguiente:
- Divida todos los datos que resulten en relaciones de muchos a muchos y almacene los datos como tablas separadas. Por ejemplo, en una base de datos utilizada por la aplicación de una escuela, dos de las tablas son ESTUDIANTE y SUJETO. En la vida real, un alumno toma varias asignaturas simultáneamente mientras que una asignatura es estudiada por varios alumnos. Estas son relaciones de muchos a muchos. 2NF establece que esta relación debe dividirse en más de las dos tablas anteriores (ESTUDIANTE y SUJETO). Una forma de dividirlos es introduciendo una tercera tabla, que contiene las columnas Student_ID, Subject_ID, Semester y Year. De esta manera, no existe una relación directa entre ESTUDIANTE y SUJETO porque todas las relaciones se crean indirectamente a través de la tercera tabla.
- Crear relaciones entre tablas mediante el uso de claves foráneas. Por ejemplo, la base de datos de un banco contiene dos tablas: CUSTOMER_MASTER (para almacenar detalles del cliente) y ACCOUNT_MASTER (para almacenar detalles sobre cuentas bancarias, incluido qué cliente tiene qué cuenta). Debe haber una manera de vincular las dos tablas para saber quién es el cliente para cada cuenta. La forma de hacerlo es a través de una clave externa, que es una columna en la tabla ACCOUNT_MASTER que apunta a una columna correspondiente en la tabla CUSTOMER_MASTER.
Una tabla para la que no hay dependencias funcionales parciales en la clave primaria podría o no estar en 2NF. Además de la clave primaria, la tabla puede contener otras claves candidatas; es necesario establecer que ningún atributo no principal tenga dependencias de clave parcial en ninguna de estas claves candidatas.