Bulk Operations

Set-based inserts, updates, deletes, and merges that bypass row-by-row round trips entirely.

What it is

Bulk operations give you set-based BulkInsert, BulkUpdate, BulkDelete, and BulkMerge methods that push an entire collection to the server in one native bulk-copy call, instead of one round trip per row.

Supported providers

SQL Server, PostgreSQL, and MySQL all ship native bulk-copy support through their respective RepoDB provider packages. SQLite falls back to a batched multi-row statement since it has no native bulk-copy protocol.

Basic usage

var rows = GenerateOrders(50_000);
connection.BulkInsert(rows);
connection.BulkMerge(rows, qualifiers: e => e.ExternalId);

When to reach for it

Anything beyond a few hundred rows benefits from a bulk call. Below that, the fixed cost of preparing a bulk-copy operation can outweigh the savings, and a plain InsertAll is simpler.