跳至主内容区

使用 Query Builder 执行删除操作

非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

Delete

您可以使用 QueryBuilder 创建 DELETE 查询。 示例:

await myDataSource
.createQueryBuilder()
.delete()
.from(User)
.where("id = :id", { id: 1 })
.execute()

这是从数据库中删除实体最高效的方式。

Soft-Delete

在 QueryBuilder 中应用软删除

await dataSource.getRepository(Entity).createQueryBuilder().softDelete()

示例:

await myDataSource
.getRepository(User)
.createQueryBuilder()
.softDelete()
.where("id = :id", { id: 1 })
.execute()

Restore-Soft-Delete

或者,您可以通过 restore() 方法恢复软删除的行:

await dataSource.getRepository(Entity).createQueryBuilder().restore()

示例:

await myDataSource
.getRepository(User)
.createQueryBuilder()
.restore()
.where("id = :id", { id: 1 })
.execute()