Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Quando um aplicativo Flask com Flask-SQLAlchemy está em execução, como uso o cliente MySQL no mesmo banco de dados ao mesmo tempo?


Você pode querer olhar para esta pergunta O carregador de relacionamento SQL Alchemy deixa um bloqueio na tabela?

O que você precisa fazer é a subclasse flask.ext.sqlalchemy.SQLAlchemy e substituir o apply_driver_hacks para passar pelo argumento de palavra-chave adicional isolamento_level='LEIA ' :
from flask.ext.sqlalchemy import SQLAlchemy

class UnLockedAlchemy(SQLAlchemy):
    def apply_driver_hacks(self, app, info, options):
        if not "isolation_level" in options:
            options["isolation_level"] = "READ COMMITTED"  # For example
        return super(UnLockedAlchemy, self).apply_driver_hacks(app, info, options)