¿Cuál es la primera forma normal?

Antes de comprender la primera forma normal, uno debe saber qué es la normalización y por qué se hace. La normalización en términos generales es la técnica de organizar los datos en la base de datos para reducir la anomalía de inserción, eliminación y actualización y eliminar la redundancia de datos. Este proceso divide las tablas más grandes en tablas más pequeñas y las vincula entre sí a través de las relaciones de las claves primaria y externa. Los datos duplicados y no normalizados no solo consumen memoria adicional, sino que dificultan la administración de la tabla mientras se insertan, eliminan y actualizan las tablas a medida que aumenta el número de datos. Por lo tanto, es muy importante normalizar las tablas antes de diseñar la base de datos de cualquier aplicación.

La primera forma normal escrita como 1NF establece las reglas fundamentales de normalización de datos y es la primera forma utilizada mientras se normalizan los datos de las tablas. Establece ciertos principios básicos de normalización de datos que cada tabla debe cumplir. Algunos de los principios se dan a continuación:

  • Cada columna debe tener valores atómicos únicos (valores que no se pueden dividir más).
  • Cada columna de la tabla no tiene valores compuestos y valores repetidos, ya que dificulta la búsqueda de valores para la columna que tiene múltiples valores. Por lo tanto, cada columna debe tener un único valor único.
  • Los valores almacenados en una columna deben ser del mismo dominio que 1NF.
  • Todas las columnas presentes en la tabla deben tener nombres únicos.
  • Una tabla debe tener una clave primaria única que se utiliza para identificar cada registro de manera diferente.

¿Cómo funciona First Normal Form?

De acuerdo con los principios principales de 1NF mencionados anteriormente,

  • No debe haber valores compuestos para una columna que se puedan dividir más, si hay una columna en una tabla que tiene un valor que se puede dividir más, entonces se debe crear una tabla separada para ese atributo con diferentes columnas en esa tabla con Una clave primaria única. Por ejemplo, en una tabla Employee, para employee_address que se puede dividir más, debe haber una tabla separada de Employee_address que tenga Employee_id como su Clave primaria y House No, City y Pincode como columnas diferentes.

Empleado de mesa (antes de 1NF)

Emp_idEmp_nameEmp_ageEmp_address
101Raghu25Colonia Xyz, Agra, 258996
102Rakesh28Piso 304, xyz road, lucknow, 568975
103Rahul45Casa no .123, cerca del hospital, varanasi, 245687

Como Emp_address tiene tantos datos para la dirección, para un solo empleado, para estar en 1NF, la tabla anterior se puede descomponer en dos tablas a continuación:

Tabla1: Detalles_de_empleados (después de 1NF)

Emp_idEmp_nameEmp_age
101Raghu25
102Rakesh28
103Rahul45

Tabla2: Employee_address (después de 1NF)

Emp_idEmp_housenoEmp_cityEmp_pincode
101Casa no. 564, colonia Xyzagra258996
102Piso 304, carretera xyzlucknow568975
103Casa no .123, cerca del hospitalvaranasi245687
    Debe haber valores atómicos para una columna que es indivisible en 1NF. Por ejemplo, en una tabla de Empleados, puede haber varios Emp_proyectos que ha manejado hasta ahora. Para tener un registro de todos los proyectos de ese empleado, debe haber un registro separado para cada proyecto de un empleado que tenga un valor único en lugar de proyectos separados por ', '

Tabla: Emp_proyectos (antes de 1NF)

Emp_idEmp_years_of_ex perienceEmp_deptEmp_proyectos
1013ESOabc, jkl
1022ESObcd
1035 5CuentasAbc, cfg, xyz, hjk

Tabla: Emp_proyectos (después de 1NF)

Emp_idEmp_years_of_ex perienceEmp_deptEmp_proyectos
1013ESOa B C
1013ESOjkl
1022ESObcd
1035 5CuentasA B C
1035 5Cuentascfg
1035 5Cuentasxyz
1035 5Cuentashjk

Tabla: los Emp_projects que tienen múltiples valores de repetición en el ejemplo anterior se pueden dividir en dos tablas para reducir la repetición:
No debería haber valores de repetición presentes en la tabla. Los valores de repetición consumen mucha memoria adicional y también hacen que la búsqueda y actualización sean lentas y el mantenimiento de la base de datos se vuelve difícil. Por ejemplo, en la tabla anterior de Employee_Projects, hay muchos valores repetitivos innecesarios de Emp_id, Emp_years_of_experience y Emp_dept, por lo que es necesario crear una nueva tabla para reducir la repetición de valores.

Tabla 1:

Emp_idEmp_years_of_experienc eEmp_dept
1013ESO
1022ESO
1035 5Cuentas

Tabla 2:

Emp_idEmp_proyectos
101a B C
101jkl
102bcd
103A B C
103cfg
103xyz
103hjk

Ventajas de la primera forma normal

A continuación se presentan algunas de las ventajas de la primera forma normal (1NF):

  • Una de las principales ventajas de 1NF es que elimina los valores de repetición innecesarios creando una tabla separada y, por lo tanto, no crea ningún problema al insertar, eliminar y actualizar los valores en la base de datos.
  • Trabajar con las tablas que tienen las columnas con múltiples valores separados por ', ' es muy difícil mientras se busca un valor específico en la base de datos dividiendo todos los valores de una columna y volviéndolos a convertir en un formato específico, perdiendo mucho tiempo y memoria en eso. 1NF lo hace fácil creando diferentes filas para diferentes valores.
  • 1NF forma la base y es el principio más importante que se sigue al crear una base de datos y, por lo tanto, es la forma normal más importante para que las tablas continúen normalizándose con 2NF y 3NF.
  • 1NF es importante ya que crea una dependencia funcional entre las dos tablas utilizando la clave primaria y la clave externa que desempeña un papel crucial al trabajar con tablas de una base de datos.
  • 1NF permite a los usuarios utilizar las consultas de la base de datos de manera efectiva, ya que elimina la ambigüedad al eliminar los valores nulos y múltiples de una columna que crea problemas importantes en el futuro al actualizar y extraer la base de datos.

Conclusión

Al trabajar con las bases de datos y crear tablas para cualquier aplicación al principio, es muy importante normalizar todas las tablas, ya que ayuda a eliminar las anomalías de inserción, eliminación y actualización. La normalización también elimina costos y tiempo futuros. Menos valores nulos y menos datos redundantes hacen que la base de datos sea más compacta. A través de la Normalización se crean más tablas que ayudan en el mantenimiento fácil y eficiente de los datos. A través de la Normalización, obviamente, se garantiza un mejor rendimiento de búsqueda y clasificación a través de índices y claves, y 1NF juega un papel vital en ello.

Artículos recomendados

Esta es una guía para la primera forma normal. Aquí discutimos la definición, el trabajo y las ventajas de la primera forma normal junto con sus ejemplos. También puede consultar los siguientes artículos para obtener más información:

  • ¿Qué es MySQL?
  • ¿Qué es el esquema MySQL?
  • Operadores MySQL
  • Servidor MySQL