final class ConflictSearch

Finds the row an incoming row would collide with, where a clause narrows which.

A partial index and a conflict target both say that only some rows take part in a collision. Where a statement names one, a row that does not satisfy it collides with nothing, and neither do the rows already there that do not.

Type Aliases§

Row = import from TableDefinition

Methods§

public function __construct(
    private CandidateKeySet $candidateKeys,
    private UpsertExpression|null $predicate,
    private string $tableName,
)

Parameters

$candidateKeysCandidateKeySetKeys a collision could be on
$predicateUpsertExpression|nullWhat narrows which rows take part, or null when nothing does
$tableNamestringTable being written to

Private surface 3§

Implementation details, listed for orientation only.

private CandidateKeySet $candidateKeys
private UpsertExpression|null $predicate
private string $tableName

Test cases 14§

Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.

Dedicated tests 5
Other tests reaching this symbol 9

Relations§

Instantiated in 2
Method calls 2
Type declarations 2