Class: BulkDeleteBuilder<T>
Defined in: src/bulk/BulkDeleteBuilder.ts:30
High-performance bulk delete engine for removing multiple rows matching filter conditions.
Automatically respects @SoftDelete annotations unless hardDelete: true is explicitly requested.
Usecase
Purging expired records, historical log cleanups, GDPR removal, and data maintenance.
Example
PostgreSQL / MySQL / SQLite / MSSQL:
const bulkDeleter = new BulkDeleteBuilder(adapter, 'notifications', metadata);
const deletedCount = await bulkDeleter.execute({ isRead: true, isArchived: true });
Type Parameters
| Type Parameter |
|---|
T extends object |
Constructors
Constructor
new BulkDeleteBuilder<
T>(adapter,tableName,metadata?,transaction?):BulkDeleteBuilder<T>
Defined in: src/bulk/BulkDeleteBuilder.ts:31
Parameters
| Parameter | Type |
|---|---|
adapter | IDbAdapter |
tableName | string |
metadata? | EntityMetadata |
transaction? | DbTransaction |
Returns
BulkDeleteBuilder<T>
Methods
execute()
execute(
predicate,options?):Promise<number>
Defined in: src/bulk/BulkDeleteBuilder.ts:45
Executes the bulk delete command matching the predicate.
Parameters
| Parameter | Type | Description |
|---|---|---|
predicate | Partial<T> | Partial entity criteria matching rows to remove. |
options? | BulkDeleteOptions | Deletion options (hardDelete, batchSize). |
Returns
Promise<number>
Total number of rows deleted or soft-deleted.