Class: BulkInsertBuilder<T>
Defined in: src/bulk/BulkInsertBuilder.ts:32
High-throughput batch insert engine that splits large entity arrays into chunked multi-row INSERT queries.
Automatically assigns audit timestamps, creator IDs, version tokens, and default values across all batches.
Usecase
Ideal for seeding test datasets, bulk data migrations, event stream ingestion, and telemetry logging.
Example
PostgreSQL / MySQL / SQLite / MSSQL:
const bulkInsert = new BulkInsertBuilder(adapter, 'audit_logs', metadata);
const insertedCount = await bulkInsert.execute(logsArray, {
batchSize: 1000,
ignoreDuplicates: true,
});
Type Parameters
| Type Parameter |
|---|
T extends object |
Constructors
Constructor
new BulkInsertBuilder<
T>(adapter,tableName,metadata?,transaction?,context?):BulkInsertBuilder<T>
Defined in: src/bulk/BulkInsertBuilder.ts:33
Parameters
| Parameter | Type |
|---|---|
adapter | IDbAdapter |
tableName | string |
metadata? | EntityMetadata |
transaction? | DbTransaction |
context? | any |
Returns
BulkInsertBuilder<T>
Methods
execute()
execute(
entities,options?):Promise<number>
Defined in: src/bulk/BulkInsertBuilder.ts:48
Executes the bulk insert operation across all provided entities.
Parameters
| Parameter | Type | Description |
|---|---|---|
entities | Partial<T>[] | Array of entity objects to insert. |
options? | BulkInsertOptions | Batching configuration options. |
Returns
Promise<number>
Total number of rows inserted across all chunks.