Mysql
 sql >> Base de données >  >> RDS >> Mysql

Lorsqu'une application Flask avec Flask-SQLAlchemy est en cours d'exécution, comment utiliser le client MySQL sur la même base de données en même temps ?

Vous voudrez peut-être regarder cette question Le chargeur SQL Alchemy Relationship laisse un verrou sur la table ?

Ce que vous devrez faire est de sous-classer flask.ext.sqlalchemy.SQLAlchemy et remplacez apply_driver_hacks méthode pour passer par l'argument de mot clé supplémentaire isolation_level='READ <some level>' :

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)