Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

195
Vistas
¿Necesito usar sqlalchemy si mi base de datos ya se diseñó manualmente?

Soy nuevo en matraz. Estoy desarrollando una aplicación web usando matraz y postgres. Ya he diseñado la base de datos. Sé que sqlalchemy es orm. ¿Todavía necesito usar sqlalchemy en el matraz si mi base de datos ya fue diseñada sin sqlalchemy? Tengo que usar esa base de datos para obtener y actualizar valores. Si voy más allá, ¿me será útil sqlalchemy? ¿O puedo simplemente usar el conector db y continuar?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Flask es un marco web y no requiere SQLAlchemy. Si elige usar Flask y SQLAlchemy, existe la extensión Flask-SQLAlchemy para que funcionen mejor juntos.

¿Necesita usar SQLAlchemy, o cualquier ORM, para trabajar con una base de datos? No. ¿Deberías? Sí. Los ORM brindan ciertas características y comodidades que SQL sin procesar no proporciona. Y siempre puedes escribir SQL sin formato.

Aquí hay algunos beneficios importantes de SQLAlchemy.

Compatibilidad

Si bien existe un estándar SQL, todas las bases de datos SQL son diferentes. Un ORM suaviza muchas de estas diferencias para que su código SQLAlchemy sea más fácil de migrar a diferentes bases de datos.

Migraciones

Su esquema está escrito, pero ¿qué sucede si necesita cambiarlo? Ahí es donde entran las migraciones de bases de datos. Le permiten cambiar su esquema (agregar y eliminar columnas, cambiar tipos, agregar tablas) de una manera reproducible y reversible. Esto hace que sea más fácil y seguro cambiar su base de datos y los datos que contiene, junto con su código. Así como para revertir cambios que resultaron ser malas ideas.

Asignación de objetos

ORM significa "Mapeador relacional de objetos". Le permite tratar una base de datos como un grupo de objetos en lugar de solo algunos datos. Python es un lenguaje orientado a objetos, y será mucho más fácil trabajar con sus datos como objetos con métodos. Cada tabla es una clase, cada fila es un objeto.

La parte de "asignación" no solo se aplica a las filas, también se aplica a los tipos de datos SQL. Por ejemplo, las columnas de marca de tiempo se cargarán como Python como objetos de fecha y hora. Esto hace que sea más conveniente trabajar con los datos en Python.

Validaciones

SQLAlchemy le permite validar sus datos antes de insertarlos en la base de datos, asegurando que todos sus datos sean como espera. Saber que todo en la base de datos es válido hace que el sistema sea más robusto y reduce el manejo de errores.

Construir consultas

En lugar de tener que escribir todo su SQL a mano, SQLAlchemy tiene un generador de consultas. Puede crear y modificar consultas como objetos. Esto simplifica la escritura de consultas. Y te permite construirlos en pedazos. Por ejemplo, puede comenzar con una consulta.

 all_users = select([ users.c.name, users.c.email ])

Y luego agregue una cláusula where.

 a_users = all_users.where(users.c.name.ilike("a%"))

Y luego una cláusula límite.

 some_a_users = a_users.limit(10)
over 4 years ago · Santiago Trujillo Denunciar

0

El uso de sqlalchemy lo ayudará a obtener/insertar datos muy fácilmente, sin importar si diseñó su base de datos manualmente, solo necesita definir su diseño y luego, en lugar de escribir varias líneas, escribe una línea y todo listo. También lo ayuda a manejar errores y mucho más. Le sugiero encarecidamente que lo use.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda