Model Class
upsertAll()
Signature
Section titled “Signature”upsertAll() — returns struct
Available in: model
Category: Create Functions
Description
Section titled “Description”Inserts or updates multiple records in a single batch operation (upsert).
Uses database-specific conflict resolution syntax (e.g., ON CONFLICT … DO UPDATE for PostgreSQL/SQLite).
The uniqueBy argument specifies which properties form the unique constraint for conflict detection.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
records | array | yes | — | Array of structs, each containing property name/value pairs. |
uniqueBy | string | yes | — | Comma-delimited list of property names that form the unique constraint for conflict detection. |
timestamps | boolean | no | true | Set to false to skip automatic createdAt/updatedAt timestamping. |
transaction | string | no | [runtime expression] | Set this to commit to update the database, rollback to run all the database queries but not commit them, or none to skip transaction handling altogether. |
parameterize | any | no | true | Set to true to use cfqueryparam on all columns, or pass in a list of property names to use cfqueryparam on those only. |