[英]Printing the SQLAlchemy Query in Python
我需要知道獲取帶有值的SQLAlchemy查詢的方法。
我可以打印正在處理的查詢,但是它不顯示值,而是顯示字段名稱本身。
SELECT recordsets.id AS recordsets_id, recordsets.version AS recordsets_version
FROM recordsets
WHERE recordsets.domain_id = :domain_id_1
AND recordsets.tenant_id IN (:tenant_id_1, :tenant_id_2)
AND recordsets.name IN (:name_1, :name_2)
因此,我需要查看值本身,而不是:name_1,:name_2或:tenant_id_1,:tenant_id_2。
創建引擎時,可以通過在True
上設置echo
來打開日志記錄。 這將打印所有查詢及其參數。
例:
engine = create_engine("mysql://scott:tiger@hostname/dbname",
encoding='latin1', echo=True)
請參閱: http : //docs.sqlalchemy.org/en/rel_1_0/core/engines.html#engine-creation-api
對於您的示例,輸出將如下所示:
2015-11-16 15:50:25,137 INFO sqlalchemy.engine.base.Engine SELECT recordsets.id AS recordsets_id, recordsets.version AS recordsets_version
FROM recordsets
WHERE recordsets.domain_id = :domain_id_1
AND recordsets.tenant_id IN (:tenant_id_1, :tenant_id_2)
AND recordsets.name IN (:name_1, :name_2)
2015-11-16 15:50:25,137 INFO sqlalchemy.engine.base.Engine {'domain_id_1': 'THE actual domain id', 'tenant_id_1': 234, 'tenant_id_2': 456, 'name_1': 'your first name', 'name_2': 'your second example name'}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.