Introducción a Bases de Datos
Aprende los fundamentos de bases de datos relacionales con PostgreSQL.
Instalando PostgreSQL
Con Docker (recomendado)
bash
docker run --name postgres \ -e POSTGRES_USER=postgres \ -e POSTGRES_PASSWORD=postgres \ -e POSTGRES_DB=ecommerce \ -p 5432:5432 \ -d postgres:15Conceptos Relacionales
Tablas
Almacenan registros (filas) con campos (columnas).
Clave Primaria (PK)
Campo único que identifica cada registro.
Clave Foránea (FK)
Campo que referencia otra tabla.
Relaciones
- Uno-a-Uno: Usuario → Perfil
- Uno-a-Muchos: Categoría → Productos
- Muchos-a-Muchos: Productos ↔ Pedidos
SQL Básico
sql
-- CrearINSERT INTO products (name, price) VALUES ('iPhone', 999.99); -- LeerSELECT * FROM products WHERE price > 100; -- ActualizarUPDATE products SET price = 899.99 WHERE id = 1; -- EliminarDELETE FROM products WHERE id = 1;Relaciones
sql
-- Uno-a-MuchosSELECT p.name, c.name as categoryFROM products pJOIN categories c ON p.category_id = c.id; -- Muchos-a-Muchos (con tabla intermedia)SELECT o.id, p.nameFROM orders oJOIN order_items oi ON o.id = oi.order_idJOIN products p ON oi.product_id = p.id;¿Por Qué Usar un ORM?
- Escribir código en lugar de SQL
- Seguridad de tipos con TypeScript
- Migraciones automáticas
- Protección contra SQL injection
Resumen
- ✅ PostgreSQL como base de datos principal
- ✅ Conceptos de tablas, PKs y FKs
- ✅ Operaciones SQL básicas
- ✅ Relaciones entre tablas
Próxima clase: Prisma ORM! 🚀