3. El Modelo Relacional: De Dibujo a Tablas 🗃️
Transformando el plano en estructura
El diagrama E-R está genial para dibujarlo en una pizarra, pero a una base de datos (como MySQL o PostgreSQL) no le entienden a los dibujos. Ellos entienden de Tablas.
El modelo relacional, creado por Edgar Codd en 1970, es la manera de traducir nuestro E-R a un esquema compuesto por filas y columnas interconectadas.
Las Reglas de Oro de la Traducción
- Entidad = Tabla: Si en tu diagrama dibujaste la entidad "Cliente", crearás una tabla llamada
Cliente. - Atributo = Columna: Las propiedades (Nombre, Apellido, Edad) pasan a ser las columnas de esa tabla.
- Registro = Fila: Cada entidad específica (Juan Pérez, 25 años) se convierte en una fila entera en la tabla.
Llaves Primarias y Foráneas 🔑
Aquí está el verdadero poder del modelo relacional. ¿Cómo conectamos dos tablas para saber qué cliente hizo qué pedido?
Primary Key (PK) - Llave Primaria
Es la columna que identifica de forma única a cada fila de su tabla. Ej: el ID del cliente. Nunca se puede repetir, ni puede quedar vacía.
Foreign Key (FK) - Llave Foránea
Es una columna en una tabla B, que guarda el valor de la Primary Key de una tabla A. Así es como se "enlaza".
Pedido tiene una columna Cliente_ID (que es una Foreign Key). Si el Cliente_ID es 5, sabemos que ese pedido pertenece al cliente de la tabla Cliente cuyo ID es 5.
🎮 Desafío Rápido: Conecta las tablas
Tienes una tabla Mascotas(ID_Mascota, Nombre) y una tabla Dueño(ID_Dueño, Nombre). ¿Dónde pondrías la Foreign Key para que cada mascota sepa quién es su dueño?
👁️ Ver respuesta sugerida
Añadirías una columna ID_Dueño (Foreign Key) a la tabla Mascota. Así, la fila de "Firulais" podría tener un ID_Dueño = 3, apuntando a "Carlos".