{{tag>dev python sql sqlalchemy}} ====== Afficher les requêtes produites par l'ORM SQLAlchemy ====== ===== La variable de configuration SQLALCHEMY_ECHO ===== Lorsqu'on utilise l'extension Flask-SQLAlchemy, on peut afficher un retour des requêtes produites par l'ORM sur la console en utilisant la variable de configuration **SQLALCHEMY_ECHO** app.config["SQLALCHEMY_ECHO"] = True ===== Conversion d'un objet Query ===== La conversion d'un objet de type Query en chaîne de caractère permet d'afficher la requête SQL. Dans l'exemple ci-dessous, la classe Shop est sérialisable vers le SGBDR (hérite de Model) >>> q = Shop.query.filter(Shop.name.like('%lou%') ) >>> q >>> print( str(q) ) SELECT shops.id AS shops_id, shops.name AS shops_name FROM shops WHERE shops.name LIKE ? ===== Références ===== * https://docs.sqlalchemy.org/en/20/faq/sqlexpressions.html * https://stackoverflow.com/questions/5631078/sqlalchemy-print-the-actual-query * https://stackoverflow.com/questions/12369295/flask-sqlalchemy-display-queries-for-debug