SQL Server: parameter values inlined as DECLARE/SET statements (so SQL Server's per-save variable naming for batched saves works), with an EXEC line that consumes the variables.
Comma-joined @CodeName=@x_uuid, ... for the EXEC line.
DECLARE @x_uuid type, @y_uuid type — empty if no params.
SET @x_uuid = N'value'\nSET @y_uuid = 1 — empty if no params.
Back-compat inline single-line @CodeName=N'value', ... form.
PostgreSQL positional-arg shape: typed $N placeholders bound via
values at execution time.
p_name => $1, p_other => $2 for the call site.
Parameter values bound in $N order.
PostgreSQL JSON-arg shape for wide entities — single $1::jsonb arg
with field values JSON-encoded. Used when the typed-arg shape would
exceed ProcedureParamLimit.
Always p_data => $1::jsonb.
Single-element [jsonString].
Dialect-specific binding shape produced by
RenderSaveCallBinding. Treated as opaque byGenerateSaveSQL— the same provider'sWrapSaveCallForResult/WrapSaveCallWithRecordChangepattern-match the variant they produced.Adding a new dialect (e.g. MySQL) adds a new variant here — touches this file once, no provider-side changes elsewhere.