如何使用 jdbi return 删除行?
How to return deleted rows using jdbi?
如何使用 jdbi return 删除行?例如,我想做这样的事情:
public List<User> deleteAndReturnUsers() {
return jdbi.withHandle(handle -> {
return handle.createQuery("DELETE FROM mytable where id = :id")
.bind("id", "someid")
.map(new UserMapper())
.list();
});
}
Postgresql 有一个 returning
关键字...
https://dbfiddle.uk/?rdbms=postgres_13&fiddle=25d284309745e40c8ea29945481d1aa2
DELETE FROM data WHERE val >= 2 RETURNING *;
然后您可以像执行普通 SELECT
语句一样执行该查询,并返回一个结果集;包含已删除的记录。
如何使用 jdbi return 删除行?例如,我想做这样的事情:
public List<User> deleteAndReturnUsers() {
return jdbi.withHandle(handle -> {
return handle.createQuery("DELETE FROM mytable where id = :id")
.bind("id", "someid")
.map(new UserMapper())
.list();
});
}
Postgresql 有一个 returning
关键字...
https://dbfiddle.uk/?rdbms=postgres_13&fiddle=25d284309745e40c8ea29945481d1aa2
DELETE FROM data WHERE val >= 2 RETURNING *;
然后您可以像执行普通 SELECT
语句一样执行该查询,并返回一个结果集;包含已删除的记录。