Skip to content

Latest commit

 

History

History
58 lines (43 loc) · 1.14 KB

delete-query-builder.md

File metadata and controls

58 lines (43 loc) · 1.14 KB

Delete using Query Builder

Delete

You can create DELETE queries using QueryBuilder. Examples:

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

This is the most efficient way in terms of performance to delete entities from your database.

Soft-Delete

Applying Soft Delete to QueryBuilder

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

Examples:

await myDataSource
  .createQueryBuilder('users')
  .softDelete()
  .where("id = :id", { id: 1 })
  .execute();

Restore-Soft-Delete

Alternatively, You can recover the soft deleted rows by using the restore() method:

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

Examples:

await myDataSource
  .createQueryBuilder('users')
  .restore()
  .where("id = :id", { id: 1 })
  .execute();