¿Cómo obtengo el número de filas afectadas con SQL Alchemy?

¿Cómo obtengo el número de filas afectadas por una instrucción de actualización con sqlalchemy? (Estoy usando mysql y python / pyramid):

from sqlalchemy.engine.base import ResultProxy @classmethod def myupdate(cls, id, myvalue): DBSession.query(cls).filter(cls.id == id).update({'mycolumn': myvalue}) if ResultProxy.rowcount == 1: return True else: return False 

Nota: vi esta publicación, pero de acuerdo con la documentación : “El ‘recuento de filas’ informa el número de filas que coinciden con el criterio DÓNDE de una instrucción ACTUALIZAR o BORRAR.” …. en otras palabras, no devuelve el número de las filas afectadas por la actualización o eliminar statement.

Puede anular este comportamiento especificando la opción correcta para el DBAPI, de acuerdo con el documento .

No tengo un mysql listo para probar, pero creo que agregar la opción correcta ( client_flag o found_rows=False dependiendo de la api utilizada) a la url de configuración debería hacer el truco. Verifique la fuente correspondiente para mysqlconnector y oursql para más información.

Espero que esto sea suficiente para ayudarte.