El modelado de datos lógico es un proceso mecánico que transforma el DER del modelado de datos conceptual en un modelo adecuado para una base de datos relacional, mediante reglas de mapeo que convierten entidades, atributos y relaciones en tablas, columnas y PK/FK.
El manejo de relaciones 1:1, 1:N y N:M permite representar las relaciones entre tablas, utilizando tablas intermedias para gestionar las relaciones N:M.
La normalización es el proceso de adaptar las tablas para que sean adecuadas para una base de datos relacional. Se lleva a cabo de forma secuencial, desde 1NF hasta 3NF, eliminando dependencias parciales y transitivas.
En comparación con el análisis de requisitos y el modelado de datos conceptual, el modelado de datos lógico es un proceso más mecánico.
El proceso se centra principalmente en la transformación del diagrama ERD, que es el producto del modelado de datos conceptual, en un paradigma de base de datos relacional, basándose en las reglas de mapeo (Mapping Rule).
Reglas de mapeo
Las entidades cuadradas se transforman en tablas.
Los atributos circulares se transforman en columnas.
Las relaciones se transforman en PK o FK.
Es más conveniente representar primero las tablas que no tienen FK.
Relaciones
Se expresa la relación entre las tablas teniendo en cuenta la cardinalidad y la opcionalidad.
Se expresa en el orden de la relación 1:1 más simple, la relación 1:N y la relación N:M.
Manejo de la relación 1:1
En una relación 1:1, se examina la relación de dependencia entre las dos tablas y se configura la FK.
Se puede ver como una tabla padre y una tabla hija.
Manejo de la relación 1:N
En una relación 1:N, dado que 1 es referenciado por N, se configura la FK en N.
Manejo de la relación N:M
Para manejar una relación N:M en una base de datos relacional, se crea una tabla intermedia (también llamada tabla de mapeo o tabla de conexión) para expresarla.
En este caso, es importante expresar la cardinalidad y la opcionalidad de ambas tablas referenciadas en base a la tabla de mapeo.
Normalización
Wikipedia - Normalización de Bases de Datos
Es el proceso de convertir una tabla no refinada en una tabla adecuada para una base de datos relacional.
El proceso de normalización utilizado en la industria llega hasta la tercera forma normal, mientras que las formas normales posteriores se utilizan principalmente en el ámbito académico.
La normalización debe llevarse a cabo secuencialmente, un paso a la vez.
Primera forma normal (1st Normal Form, 1NF)
Las columnas que pertenecen a una tabla deben tener solo valores atómicos.
Si revisamos el principio fundamental de la primera forma normal, aunque es difícil de entender, simplemente significa que cada columna debe tener un solo valor.
Si hay varios valores dentro de una columna, es decir, si no es atómico, puede ser difícil realizar una unión con una instrucción SQL y puede causar varios problemas.
Segunda forma normal (2nd Normal Form, 2NF)
Debe cumplir con la primera forma normal.
Debe eliminar la dependencia parcial.
Si existen valores duplicados en las filas de una tabla, se busca la columna de la que depende dicha fila y se separa.
Tercera forma normal (3rd Normal Form, 3NF)
Debe cumplir con la primera forma normal.
Debe cumplir con la segunda forma normal.
Debe eliminar la dependencia transitiva.
La expresión dependencia transitiva es muy difícil de entender. Según mi comprensión, si hay uno o más valores en una tabla específica que implícitamente significan el identificador de otra tabla (excluyendo FK, por supuesto), parece que eso se llama dependencia transitiva.