馃彔 Inicio

Diagramas Entidad-Relaci贸n

El Plano de tu Base de Datos

驴Qu茅 es un Diagrama Entidad-Relaci贸n (ERD)?

Es una representaci贸n visual de la estructura de una base de datos. Muestra las "cosas" que queremos almacenar y c贸mo se conectan entre s铆.

Es el lenguaje universal que usan desarrolladores, analistas y arquitectos para dise帽ar y discutir modelos de datos antes de escribir una sola l铆nea de SQL.

  • Componentes Clave: Entidades, Atributos y Relaciones.

Niveles de Abstracci贸n de un ERD

Conceptual

Vista de alto nivel. Muestra las entidades principales y sus relaciones. No incluye atributos ni llaves. Ideal para entender el negocio.

L贸gico

M谩s detallado. Incluye todas las entidades, atributos, llaves primarias y for谩neas. Es independiente del motor de base de datos.

F铆sico

El m谩s detallado. Incluye tipos de datos espec铆ficos (VARCHAR, INT), nombres de 铆ndices y restricciones. Adaptado a un motor de BD concreto.

Cardinalidad: Uno a Uno (1:1)

Una instancia de la Entidad A solo puede estar relacionada con una y solo una instancia de la Entidad B, y viceversa.

  • Ejemplo: Un `USUARIO` tiene un 煤nico `PERFIL_DE_USUARIO`.
  • Implementaci贸n: La llave primaria de una tabla es tambi茅n la llave for谩nea en la otra.
  • Uso: Poco com煤n. Se usa para separar datos por seguridad, rendimiento o para evitar columnas NULAS masivas.

Cardinalidad: Uno a Muchos (1:N)

Una instancia de la Entidad A puede estar relacionada con cero, una o muchas instancias de la Entidad B. Pero una instancia de B solo puede estar relacionada con una de A.

  • Ejemplo: Un `CLIENTE` puede tener muchos `PEDIDOS`, pero cada `PEDIDO` pertenece a un 煤nico `CLIENTE`.
  • Implementaci贸n: Se a帽ade una llave for谩nea en la tabla del lado "Muchos" (Pedidos) que apunta a la llave primaria del lado "Uno" (Clientes).
  • Es la relaci贸n m谩s com煤n en bases de datos.

Cardinalidad: Muchos a Muchos (N:M)

Una instancia de la Entidad A puede estar relacionada con muchas instancias de la Entidad B, y viceversa.

  • Ejemplo: Un `ESTUDIANTE` puede inscribirse en muchos `CURSOS`, y un `CURSO` puede tener muchos `ESTUDIANTES`.
  • Importante: Este tipo de relaci贸n no se puede implementar directamente en una base de datos relacional.

Resolviendo la Relaci贸n Muchos a Muchos

Para implementar una relaci贸n N:M, se crea una tercera tabla llamada Tabla de Uni贸n (o de enlace).

Esta tabla (`INSCRIPCIONES`) contiene las llaves for谩neas de las dos tablas originales (`ESTUDIANTE` y `CURSO`). Su llave primaria suele ser una llave compuesta por ambas llaves for谩neas.

驴Por Qu茅 es Crucial para la Anal铆tica?

Para un Analista o Cient铆fico de Datos, un ERD es el mapa del tesoro.

  • Navegaci贸n de Datos: Te dice qu茅 tablas existen y, lo m谩s importante, c贸mo unirlas correctamente para responder a preguntas de negocio.
  • Validaci贸n de L贸gica: Permite verificar si una consulta tiene sentido. Si no hay una ruta entre dos tablas en el ERD, probablemente no deber铆as unirlas directamente.
  • Comunicaci贸n: Es la herramienta perfecta para discutir con los ingenieros de datos sobre qu茅 informaci贸n necesitas y d贸nde encontrarla.