classMultiTableMutationTarget
final class MultiTableMutationTarget
One table a statement writing to several of them writes to.
Methods§
public function __construct(
string $tableName,
array<int, string> $columns,
array<int, string> $primaryKeys,
)Parameters
$tableName | string | |
$columns | array<int, string> | |
$primaryKeys | array<int, string> |
Calls 1
- function-call
array_valuesline 25
public function tableName(): stringTable name.
Returns
stringTest cases 1
Called from 2
public function columns(): list<string>public function primaryKeys(): list<string>Returns
list<string>public function matchColumns(): list<string>Returns
list<string>Test cases 4
MultiTableMutationTargetTest::testMatchColumnsAreTheKeyColumnsWhereTheTableDeclaresOnecallsMultiTableMutationTargetTest::testMatchColumnsFallBackToEveryColumnWhereTheTableDeclaresNoKeycallsMultiTableMutationTargetTest::testTableNameColumnsAndPrimaryKeysAreWhatTheTargetWasWrittenAscallsMultiTableMutationTargetTest::testUsesAllColumnsForMatchingWithoutPrimaryKeycalls
Private surface 3§
Implementation details, listed for orientation only.
private string $tableNameprivate list<string> $columnsprivate list<string> $primaryKeysTest cases 18§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 7
MultiTableMutationTargetTest::testColumnsAreTheColumnsTheStatementWritescallsMultiTableMutationTargetTest::testMatchColumnsAreTheKeyColumnsWhereTheTableDeclaresOnecallsMultiTableMutationTargetTest::testMatchColumnsFallBackToEveryColumnWhereTheTableDeclaresNoKeycallsMultiTableMutationTargetTest::testPrimaryKeysAnswersTheColumnsThatIdentifyOneOfItsRowscallsMultiTableMutationTargetTest::testPrimaryKeysIsNothingWhereTheTableDeclaresNoKeycallsMultiTableMutationTargetTest::testTableNameColumnsAndPrimaryKeysAreWhatTheTargetWasWrittenAscallsMultiTableMutationTargetTest::testUsesAllColumnsForMatchingWithoutPrimaryKeycalls
Other tests reaching this symbol 11
TargetProjectionTest::testMultiTableSelectListcallsTargetProjectionTest::testMultiTableSelectColumnscallsMultiDeleteMutationTest::testApplyDeletesFromMultipleTablescallsMultiDeleteMutationTest::testApplyDeletesMultipleRowsFromMultipleTablescallsMultiDeleteMutationTest::testTableNameReturnsPrimaryTablecallsMultiDeleteMutationTest::testTableNamesReturnsAllTableNamescallsMultiUpdateMutationTest::testApplySkipsRowsWithIncompleteValuesOrIdentitycallsMultiUpdateMutationTest::testApplyUpdatesMultipleRowscallsMultiUpdateMutationTest::testApplyUpdatesMultipleTablescallsMultiUpdateMutationTest::testTableNameReturnsPrimaryTablecallsMultiUpdateMutationTest::testTableNamesReturnsAllTableNamescalls
Relations§
Instantiated in 3
- new ZtdQuery\Platform\MySql\Rewrite\Transformer\Delete\TargetProjection::targetsFromContexts() packages/ztd-query-mysql/src/Rewrite/Transformer/Delete/TargetProjection.php:32
- new ZtdQuery\Platform\MySql\Rewrite\Transformer\Update\TargetProjection::targetsFromContexts() packages/ztd-query-mysql/src/Rewrite/Transformer/Update/TargetProjection.php:35
- new ZtdQuery\Platform\MySql\Shadow\Mutation\Row\RowMutationResolver::multiTableTargets() packages/ztd-query-mysql/src/Shadow/Mutation/Row/RowMutationResolver.php:153