首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Jooq中,如何让"delete“语句返回被删除的记录?

问在Jooq中,如何让"delete“语句返回被删除的记录?
EN

Stack Overflow用户
提问于 2020-09-15 07:53:07
回答 1查看 330关注 0票数 1

在我的项目中,有两个表,orders和order_payments。

后者是一个包含两列的连接表,即order_id和payment_id。

我使用FK并不是为了提高效率。

当我从orders表中删除一些订单时,我需要根据order_id字段从payments表中删除相关记录。

因此,在使用DELETE语句删除订单之后,我希望返回已删除订单的order_id,以便我可以使用它们来检索order_payments表并删除相关记录。

有人能教我怎么做吗?

我试过了

代码语言:javascript
复制
    private List<OrdersRecord> deleteOrders(OrderQuery orderQuery, DSLContext dsl) {
        DeleteQuery<OrdersRecord> deleteQuery = dsl.deleteQuery(ORDERS);
        deleteQuery.addConditions(orderQueryConditions(orderQuery));
        deleteQuery.setReturning();
        deleteQuery.execute();
        return deleteQuery.getReturnedRecords();
    }

但是返回了一个空列表。

我哪里做错了?

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-15 15:50:21

我不认为这在MySQL 8.0.21中是可能的:https://bugs.mysql.com/bug.php?id=83139

如果你知道用原生MySQL (不管是什么版本)做这件事的方法,或者以某种方式模拟它,请在这里记录它:https://github.com/jOOQ/jOOQ/issues/6865

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63893233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档