python – 当SQLAlchemy上的session.flush()失败时,我应该调用rollback吗?

我知道当session.commit()失败时调用回滚,例如try-except块.
但是当session.flush()失败时,我应该执行rollback()吗?

try:
    session.flush()
except IntegrityError:
    session.rollback()
最佳答案
总是回滚失败的刷新,您不需要自己执行:

http://docs.sqlalchemy.org/en/latest/orm/session_api.html#sqlalchemy.orm.session.Session.flush

数据库操作将在当前事务上下文中发出,并且不会影响事务的状态,除非发生错误,在这种情况下将回滚整个事务.您可以在事务中随意刷新()以将更改从Python移动到数据库的事务缓冲区.

相关文章

使用OpenCV实现视频去抖 整体步骤: 设置输入输出视频 寻找帧...
前言 对中文标题使用余弦相似度算法和编辑距离相似度分析进行...
前言 之前尝试写过一个爬虫,那时对网页请求还不够熟练,用的...
前言 本文使用Python实现了PCA算法,并使用ORL人脸数据集进行...
前言 使用opencv对图像进行操作,要求:(1)定位银行票据的...
天气预报API 功能 从中国天气网抓取数据返回1-7天的天气数据...