Skip to main content

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​

ParameterType
adapterIDbAdapter
tableNamestring
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​

ParameterTypeDescription
entitiesPartial<T>[]Array of entity objects to insert.
options?BulkInsertOptionsBatching configuration options.

Returns​

Promise<number>

Total number of rows inserted across all chunks.