classInsertSelectRenderer
final class InsertSelectRenderer
Insert select renderer for PostgreSQL queries.
Methods§
public function __construct()Initializes the collaborators and state used by this insert select renderer.
Calls 2
public function render(
string $selectSql,
list<string> $tableColumns,
list<string> $insertColumns,
array<string, string> $defaults,
array<string, int> $generatedIdentityStarts = [],
): stringParameters
$selectSql | string | |
$tableColumns | list<string> | |
$insertColumns | list<string> | |
$defaults | array<string, string> | |
$generatedIdentityStarts | array<string, int> |
Returns
stringCalled from 1
Calls 4
- method-call PgSqlIdentifierQuoter::quote() line 43
- method-call InsertSelectProjectionPlanner::plan() line 47
- method-call InsertSelectRenderer::renderGeneratedIdentity() line 53
- function-call
implodeline 62
public function renderGeneratedIdentity(int $start): stringBuilds an identity expression for rows returned by INSERT SELECT.
Parameters
$start | int |
Returns
stringThrows
InvalidArgumentExceptionTest cases 1
Called from 2
- method-call ZtdQuery\Platform\Postgres\Rewrite\Transformer\InsertSelectRenderer::render() packages/ztd-query-postgres/src/Rewrite/Transformer/InsertSelectRenderer.php:53
- method-call ZtdQuery\Platform\Postgres\Rewrite\Transformer\Merge\RowActions::insertedRows() packages/ztd-query-postgres/src/Rewrite/Transformer/Merge/RowActions.php:155
Calls 1
- new
InvalidArgumentExceptionline 73
Private surface 2§
Implementation details, listed for orientation only.
private PgSqlIdentifierQuoter $quoterprivate InsertSelectProjectionPlanner $projectionPlannerTest cases 13§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 2
Other tests reaching this symbol 11
PgSqlSessionFactoryTestcallsPgSqlRewriterTestcallsStatementRewriterTestcallsSelectProjectionTest::testRenderProjectsGeneratedIdentityAndSourceColumnscallsInsertTransformerTestcallsRowActionsTest::testInsertedRowscallsRowActionsTest::testModifiedRowsProjectsBothActionKindsInOrdercallsRowActionsTest::testUnchangedRowscallsRowActionsTest::testUpdatedRowscallsMergeTransformerTestcallsPgSqlTransformerTestcalls
Relations§
Instantiated in 2
- new ZtdQuery\Platform\Postgres\Rewrite\Transformer\InsertTransformer::__construct() packages/ztd-query-postgres/src/Rewrite/Transformer/InsertTransformer.php:44
- new ZtdQuery\Platform\Postgres\Rewrite\Transformer\MergeTransformer::__construct() packages/ztd-query-postgres/src/Rewrite/Transformer/MergeTransformer.php:36
Method calls 2
- method-call ZtdQuery\Platform\Postgres\Rewrite\Transformer\Insert\SelectProjection::render() packages/ztd-query-postgres/src/Rewrite/Transformer/Insert/SelectProjection.php:51
- method-call ZtdQuery\Platform\Postgres\Rewrite\Transformer\Merge\RowActions::insertedRows() packages/ztd-query-postgres/src/Rewrite/Transformer/Merge/RowActions.php:155
Type declarations 5
- type ZtdQuery\Platform\Postgres\Rewrite\Transformer\Insert\SelectProjection packages/ztd-query-postgres/src/Rewrite/Transformer/Insert/SelectProjection.php:23
- type ZtdQuery\Platform\Postgres\Rewrite\Transformer\InsertTransformer packages/ztd-query-postgres/src/Rewrite/Transformer/InsertTransformer.php:27
- type ZtdQuery\Platform\Postgres\Rewrite\Transformer\Merge\RowActions packages/ztd-query-postgres/src/Rewrite/Transformer/Merge/RowActions.php:24
- type ZtdQuery\Platform\Postgres\Rewrite\Transformer\Merge\RowActions packages/ztd-query-postgres/src/Rewrite/Transformer/Merge/RowActions.php:31
- type ZtdQuery\Platform\Postgres\Rewrite\Transformer\MergeTransformer packages/ztd-query-postgres/src/Rewrite/Transformer/MergeTransformer.php:23