Taller Interactivo - PILARES CDMX
El Modelo Entidad-Relación (E-R) es una herramienta visual que nos permite diseñar bases de datos representando el mundo real de forma estructurada.
Fue creado por Peter Chen en 1976 y desde entonces es el estándar mundial para diseñar bases de datos relacionales.
Definición: Un objeto o "cosa" del mundo real sobre el que queremos almacenar información.
Ejemplos:
Definición: Características o propiedades que describen a una entidad.
Tipos de atributos:
Definición: Conexiones o asociaciones entre dos o más entidades.
Ejemplos:
Definición: Indica cuántas instancias de una entidad se relacionan con otra.
Ejemplo: Persona ↔ Pasaporte
Una persona tiene UN pasaporte, y un pasaporte pertenece a UNA persona
Ejemplo: Departamento ↔ Empleados
Un departamento tiene MUCHOS empleados, pero cada empleado pertenece a UN departamento
Ejemplo: Estudiantes ↔ Cursos
Un estudiante toma VARIOS cursos, y un curso tiene VARIOS estudiantes
Entidad Fuerte: Existe por sí misma, tiene su propia llave primaria
Ejemplo: CLIENTE (ID_cliente)
Entidad Débil: Depende de otra entidad para existir
Ejemplo: DEPENDIENTE (de un empleado) - no tiene sentido sin el empleado
Representa una ENTIDAD
Ejemplo: ESTUDIANTE, PRODUCTO, CLIENTE
Representa un ATRIBUTO
Ejemplo: nombre, edad, precio
Representa una RELACIÓN
Ejemplo: inscribe, compra, atiende
Conecta entidades con relaciones y atributos
Une los elementos del diagrama
Atributo MULTIVALUADO
Ejemplo: teléfonos, emails
Atributo IDENTIFICADOR (llave primaria)
Ejemplo: ID, matrícula, RFC
Entidad DÉBIL
Depende de otra entidad
Atributo DERIVADO
Se calcula de otros atributos
1 → Uno
N o M → Muchos
0..1 → Cero o uno (opcional)
1..* → Uno o muchos
0..* → Cero o muchos
Pregúntate: ¿Sobre qué objetos necesito guardar información?
Llave primaria: ISBN (subrayado)
Llave primaria: ID_usuario
Llave primaria: ID_préstamo
Relación 1: USUARIO realiza PRÉSTAMO
Cardinalidad: 1:N (Un usuario puede tener muchos préstamos)
Relación 2: LIBRO está en PRÉSTAMO
Cardinalidad: 1:N (Un libro puede estar en muchos préstamos históricos)
[nombre] [apellido] [teléfono] [título] [autor] [editorial]
○ ○ ○ ○ ○ ○
| | | | | |
[ID_usuario]──────┬──────────────┘ ┌───────[ISBN]──────┘
○ | | ○
| |
┌───▭───┐ ┌───▭───┐
│USUARIO│ │ LIBRO │
└───────┘ └───────┘
│ │
│ 1 N │
│ │
└──────┬◇┬──────────┘
[realiza]
│
│
┌────▭────┐
│PRÉSTAMO │
└─────────┘
│
┌────────────┼────────────┐
○ ○ ○
[ID_préstamo] [fecha_ [fecha_
préstamo] devolución]
Escenario: Sistema de citas médicas en una clínica
Lee el siguiente texto y escribe qué entidades encuentras:
"La clínica atiende pacientes que agendan citas con diferentes médicos. Cada paciente tiene nombre, teléfono y CURP. Los médicos tienen nombre, especialidad y cédula profesional. Las citas tienen fecha, hora y consultorio asignado."
Para el mismo sistema de citas médicas, identifica las relaciones y su cardinalidad:
¿Cuál es la cardinalidad entre PACIENTE y CITA?
¿Cuál es la cardinalidad entre MÉDICO y CITA?
Diseña el modelo E-R completo para:
Una tienda en línea donde los clientes hacen pedidos de productos. Cada cliente tiene nombre, email y dirección. Los productos tienen código, nombre, precio y stock. Los pedidos tienen fecha y total.
Pasos a seguir:
Explica con tus propias palabras: ¿Por qué es importante diseñar el modelo E-R antes de crear las tablas en la base de datos?