INSERT, UPDATE, and DELETE
Write queries preserve column ownership and value-family constraints. An INSERT or UPDATE without assignments fails during compilation.
Single-row and multi-row INSERT
Multi-row compilation verifies identical columns and ordering before adding values to the shared parameter sequence.
Conflict handling
A conflict target can be one column or a tuple of up to four columns. do_nothing, bound-value updates, and excluded references remain structured. The MySQL dialect rejects this syntax.
UPDATE
UPDATE does not require a filter automatically. A full-table update must be explicit, and applications should add policy checks at their boundary.
Update boundary in v0.2.0
This version supports bound-value set and returning, but not set_expression, UPDATE CTEs, or UPDATE FROM. Do not copy the newer examples into v0.2.0.
DELETE
DELETE also permits an omitted filter. Production interfaces should model full-table deletion as a separate controlled operation.