如何获取SQL Alchemy正在执行的查询的原始SQL

时间:2014-03-31 21:44:21

标签: python sql django sqlalchemy

我们使用SQL alchemy作为项目的ORM。我想要得到&为了性能目的,分析生成的原始SQL(通过SQL炼金术)。 有人可以告诉我,如果有一种方法可以在将原始SQL提交到数据库之前收集它。

1 个答案:

答案 0 :(得分:0)

您可以在实例化引擎时设置echo=True

>>> from sqlalchemy import create_engine
>>> engine = create_engine("mysql://localhost/mydb", echo=True)

这会导致通过普通的Python日志记录来记录所有SQL语句。您可以使用适当的日志配置轻松地将这些消息捕获到文件中,如Python logging examples所示。

参考:SQLAlchemy Engine Configuration