Saltar al contenido principal
SQLAlchemy
19 € 18h Nivel medio

SQLAlchemy

Curso completo de SQLAlchemy, el ORM y motor SQL de referencia en el ecosistema Python para persistencia profesional sobre bases de datos relacionales. Aprendes la arquitectura Core y ORM, modelos declarativos tipados, gestión de sesiones y transacciones, relaciones y consultas avanzadas, rendimiento y problema N+1, migraciones con Alembic y stack asíncrono moderno. Al terminar entregas una API con persistencia lista para producción y testing real contra bases de datos.

Certificado incluido Ejercicios evaluados por IA Acceso permanente Sin contrato ni cuotas

Estructura del curso

  • Introducción a SQLAlchemy Lección
  • Instalación de SQLAlchemy y drivers Lección
  • Engine y conexión en SQLAlchemy Lección
  • Arquitectura Core vs ORM en SQLAlchemy Lección
  • Test de fundamentos de SQLAlchemy Test

Detalles del curso

Público objetivo

  • Personas con conocimientos de Python y SQL que quieren adoptar el ORM de referencia del ecosistema.
  • Perfiles backend que trabajan con FastAPI, Flask o Pyramid y necesitan una capa de persistencia profesional.
  • Equipos que migran desde Django ORM, Peewee o scripts ad-hoc con psycopg2 hacia SQLAlchemy 2.
  • Arquitectos que quieren dominar rendimiento (N+1, bulk, pool), Alembic y async para proyectos en producción.

Contenido del certificado

Módulo 1: Fundamentos Introducción a SQLAlchemy y su ecosistema Instalación con uv y primer proyecto Engine y URL de conexion Arquitectura Core vs ORM Módulo 2: Modelos declarativos DeclarativeBase y clase Base Columnas tipadas y tipos modernos Claves primarias y estrategias de generación Constraints (unique, check, foreign key) Mapped y mapped_column con type hints Módulo 3: CRUD con Session Session como Unit of Work Crear y leer entidades Actualizar y eliminar entidades Transacciones y savepoints Módulo 4: Relaciones One to Many y relationship Many to One y back_populates Many to Many con tabla de asociación One to One con uselist=False Cascade, delete orphan y limpieza automática Módulo 5: Consultas con select() 2.x select() unificado Core y ORM where, and_, or_ y operadores Joins y carga de relaciones Agregados y group_by Subconsultas correlacionadas Window functions Módulo 6: Rendimiento Lazy loading por defecto joinedload y selectinload Problema N+1 y detección en logs Bulk operations con insert y update Connection pool (QueuePool, NullPool, StaticPool) Módulo 7: Alembic Introducción y configuración Revisiones y upgrade Autogenerate y revisión de scripts Downgrade y resolución de ramas Módulo 8: Async y testing AsyncEngine y create_async_engine AsyncSession y patrones con FastAPI Testing con pytest, pytest asyncio y Testcontainers Proyecto capstone: API FastAPI con SQLAlchemy async y Alembic Evaluación global: test final de certificación

Objetivos de aprendizaje

  • Declarar modelos modernos con DeclarativeBase, Mapped y mapped_column, sin API legacy.
  • Gestionar transacciones y persistencia con la Session y el patrón Unit of Work.
  • Resolver relaciones One-to-Many, Many-to-One, Many-to-Many y One-to-One con relationship, back_populates y cascade.
  • Escribir consultas con select() 2.x que incluyan joins, agregados, subconsultas y window functions.
  • Diagnosticar y eliminar el problema N+1 con joinedload y selectinload.
  • Configurar el connection pool (QueuePool, NullPool, StaticPool) según el entorno.
  • Gestionar migraciones con Alembic: autogenerate, upgrade, downgrade y resolución de ramas.
  • Construir un stack asíncrono con AsyncEngine, AsyncSession y asyncpg en FastAPI.
  • Escribir tests con pytest-asyncio y Testcontainers-Python para validar el comportamiento real.

Antes de comprar

¿Cuánto dura el acceso?

Acceso permanente. El curso queda asociado a tu cuenta para siempre, con todas las lecciones, ejercicios y certificado.

¿Incluye certificado?

Sí. Al superar el curso recibes un certificado con QR público verificable. La URL del certificado es pública: puedes compartirla en LinkedIn o con un empleador sin que necesiten una cuenta CertiDevs.

¿Puedo pedir factura con NIF?

Sí. En el proceso de compra puedes indicar datos de facturación con NIF español o europeo. Stripe emite la factura electrónica automáticamente.

¿Hay devolución?

Sí. Devolución íntegra dentro de los 14 días naturales desde la compra siempre que no se haya consumido el contenido. Escríbenos a hola@certidevs.com con el correo de tu cuenta y procesamos el reembolso.

¿Te lo paga tu empresa o lo quieres para tu equipo? Tenemos modelos corporativos sin permanencia.

Ver propuesta para empresas