DB Extensions DB Extensions DB Extensions Bulk SQL for Dapper and ADO.NET

Like Dapper, we extend your IDbConnection. Keep querying with Dapper. Write thousands of rows with one extra method — much faster than a loop.

Get Started

Try for free. Get commercial licenses at low rates.

DbExtensions adds BulkInsert, BulkUpdate, BulkDelete, and BulkMerge to the same connection Dapper already uses. One extra using. No new client. That is why it fits Dapper so well — and any other ADO.NET code.

Still writing this?

foreach (var customer in customers)
    connection.Execute(
        "INSERT INTO Customer (Id, Name, City) VALUES (@Id, @Name, @City)",
        customer);

One call instead — and much faster

connection.BulkInsert(customers);

The second snippet is not just shorter. On SQL Server, 5,000 inserts took 8 seconds with the loop and 70 ms with BulkInsert() — about 110× faster. Update, delete, and merge follow the same pattern.

OperationDapper, row by rowDbExtensionsFaster
Insert7.9 s0.07 s110×
Update7.7 s0.42 s18×
Delete7.5 s0.27 s28×
Merge11.6 s0.28 s41×

5,000 rows, local SQL Server. How we measured this.

Insert, update, delete, merge

Same connection as Dapper. One method each — not a new client.

Works with the databases you already use

SQL Server
PostgreSQL
MySQL
MariaDB
SQLite
Oracle
Snowflake

Also IBM Db2, SAP HANA, SAP ASE, and any ADO.NET provider with an ETLBox connector.

Works with Dapper

Same idea as Dapper: we extend IDbConnection. Query with Dapper, write in bulk — one extra using, no new client.

Faster than a loop

Not just less code. A Dapper loop takes seconds; bulk load finishes the same 5,000 inserts in milliseconds.

Insert, update, delete, merge

Not just inserts. Change or remove many rows, or sync a whole table, with the same one-line style.

Keep tables in sync

New rows go in, existing rows are updated, missing rows can be deleted — without checking each record yourself.

Compare

Dapper loopSqlBulkCopyDbExtensions
InsertOne round-trip per rowFast, SQL Server onlyOne call, many databases
Update / deleteSame loopNot includedBulkUpdate / BulkDelete
Upsert / syncSelect + insert or updateNot includedBulkMerge
APISQL you already writeDataTable + column mapsYour POCOs on IDbConnection

Compared to Dapper and SqlBulkCopy

Add bulk operations in minutes

BulkInsert, BulkUpdate, BulkDelete, and BulkMerge — one package, one line of code each.

Step 1:
Read the overview

See how ETLBox.DbExtensions sits on IDbConnection next to Dapper.

Read the overview
Step 2:
Install the package

Add ETLBox.DbExtensions plus your database provider. No extra configuration.

Install now
Step 3:
Run a bulk insert

Get a free trial key and try the same operations in your own database.

Start a trial