Articles of sqlalchemy

Sintaxis declarativa de SQLAlchemy con carga automática (reflexión) en pilones

Me gustaría usar la carga automática para usar una base de datos existente. Sé cómo hacerlo sin syntax declarativa (model / _ init _.py): def init_model(engine): “””Call me before using any of the tables or classes in the model””” t_events = Table(‘events’, Base.metadata, schema=’events’, autoload=True, autoload_with=engine) orm.mapper(Event, t_events) Session.configure(bind=engine) class Event(object): pass Esto funciona bien, […]

La base de datos de destino no está actualizada

Me gustaría hacer una migración para una aplicación Flask. Estoy usando Alembic. Sin embargo, recibo el siguiente error. Target database is not up to date. En línea, leí que tiene algo que ver con esto. http://alembic.zzzcomputing.com/en/latest/cookbook.html#building-an-up-to-date-database-from-scratch Desafortunadamente, no entiendo bien cómo actualizar la base de datos y dónde / cómo debo escribir el código que […]

¿Cómo obtener el valor original de los campos modificados?

Estoy usando sqlalchemy como mi orm, y uso declarative como Base. Base = declarative_base() class User(Base): __tablename__ = ‘users’ id = Column(Integer, primary_key=True) name = Column(String) Mi pregunta es, ¿cómo puedo saber si un usuario ha sido modificado y cómo obtener los valores originales sin consultar la base de datos? user = Session.query(User).filter_by(id=user_id).first() # some […]

¿Puede Sqlalchemy funcionar bien con varios archivos de base de datos SQLite adjuntos?

Es posible conectar varias bases de datos SQLite entre sí utilizando la statement ‘ATTACH’ y trabajar conjuntamente con ellas. Se puede hacer referencia a las tablas en cada archivo SQLite usando una palabra clave específica de esquema / archivo. Esto debería permitirle tratar simultáneamente varias tablas con el mismo nombre por scope por archivo. Pasé […]

Problemas de conexión con SQLAlchemy y múltiples procesos.

Estoy usando PostgreSQL y SQLAlchemy en un proyecto que consiste en un proceso principal que inicia procesos secundarios. Todos estos procesos acceden a la base de datos a través de SQLAlchemy. Estoy experimentando fallos de conexión repetibles: los primeros procesos secundarios funcionan correctamente, pero después de un tiempo se produce un error de conexión. Aquí […]

sqlalchemy, postgresql y la relación se trabaron en “inactivo en transacción”

Tengo un problema relacionado con sqlalchemy y postgresql. class Profile(Base): … roles = relationship(‘Role’, secondary=role_profiles, backref=’profiles’, lazy=’dynamic’) Cuando se ejecuta ( current_user es una instancia de la clase Profile ): roles = current_user.roles.filter().all() Al usar sqlalchemy, me quedo idle in transaction para todas las selecciones para leer el perfil en postgresql. Editar: De hacerme eco […]

¿Cómo me conecto a SQL Server a través de sqlalchemy utilizando la autenticación de Windows?

sqlalchemy, un módulo de conexión db para Python, usa la autenticación SQL (cuentas de usuario definidas por la base de datos) de forma predeterminada. Si desea usar sus credenciales de Windows (dominio o local) para autenticarse en el servidor SQL, se debe cambiar la cadena de conexión. De forma predeterminada, según lo definido por sqlalchemy, […]

Sqlalchemy: actualización de la relación secundaria

Tengo dos tablas, digamos A y B. Ambas tienen una identificación de clave principal. Tienen una relación de muchos a muchos, SEC. SEC = Table(‘sec’, Base.metadata, Column(‘a_id’, Integer, ForeignKey(‘A.id’), primary_key=True, nullable=False), Column(‘b_id’, Integer, ForeignKey(‘B.id’), primary_key=True, nullable=False) ) class A(): … id = Column(Integer, primary_key=True) … rels = relationship(B, secondary=SEC) class B(): … id = Column(Integer, […]

convertir el resultado de la consulta sqlalchemy a una lista de dictados

Quiero que el resultado de mi consulta se convierta en una lista de dictados como este: result_dict = [{‘category’: ‘failure’, ‘week’: ‘1209’, ‘stat’: ‘tdc_ok’, ‘severityDue’: ‘2_critic’}, {‘category’: ‘failure’, ‘week’: ‘1210’, ‘stat’: ‘tdc_nok’, ‘severityDue’: ‘2_critic’}] Pero en lugar de eso lo entiendo como un dictado, así con teclas repetidas: result_dict = {‘category’: ‘failure’, ‘week’: ‘1209’, ‘stat’: […]

Definir la columna de enumeración SQLAlchemy con Python enumeración genera “ValueError: no es una enumeración válida”

Estoy tratando de seguir este ejemplo para tener una columna enum en una tabla que usa el tipo Enum de Python. Defino la enumeración y luego la paso a la columna como se muestra en el ejemplo, pero obtengo ValueError: is not a valid Enum . ¿Cómo defino correctamente una columna de enumeración SQLAlchemy con […]