在会话结束时,在结束之前,我想打印在该会话期间添加和/或更新的总行数的摘要。
我知道我可以使用日志记录打印每个SQL查询,例如:
import logging
logging.basicConfig()
logging.getLogger('sqlalchemy.engine').setLevel(logging.INFO)
但是,日志文件对于数千个查询来说太大了。
相反,我只想打印出总数。
干杯。
答案 0 :(得分:1)
您可以在提交计数之前迭代会话的新脏实例。
for instance in session.new:
add_to_new_count(instance)
for instance in session.dirty:
if session.is_modified(instance):
add_to_update_count(instance)