【问题标题】:Python sqlalchemy returning values after delete [duplicate]删除后Python sqlalchemy返回值[重复]
【发布时间】:2019-07-19 15:25:24
【问题描述】:

sqlalchemy中删除后如何返回值。

这是我想要实现的查询:

DELETE FROM sometable WHERE id = 1 returning id

但这是我目前拥有的:

DBSession.query(SomeTable).filter(SomeTable.id == 1).delete(synchronize_session=False)

删除后我需要该表的返回值,有人可以帮助我吗?

【问题讨论】:

  • 很遗憾,ORM 查询不支持RETURNING,只支持匹配行数。如果需要该语句,则必须使用 Core。
  • 您好 Ilja Everilä,您可以将此评论用于回答。

标签: python sqlalchemy


【解决方案1】:

只需对表对象调用 drop() 即可。来自文档:

为此表发出 DROP 语句,使用给定的 Connectable 进行连接。

在你的情况下应该是:

.表格.drop() 如果您遇到如下异常:

sqlalchemy.exc.UnboundExecutionError:表对象''未绑定到引擎或连接。如果没有要执行的数据库,则无法继续执行 你需要通过引擎:

.表格.drop(engine)

【讨论】:

    猜你喜欢
    • 2021-09-21
    • 2015-07-16
    • 2019-09-21
    • 2019-09-12
    • 2019-08-08
    • 2017-11-29
    • 1970-01-01
    • 1970-01-01
    • 2011-03-25
    相关资源
    最近更新 更多