classResultSelectRunner
final class ResultSelectRunner
Executes result-select queries and returns rows.
Type Aliases§
Row = import from TableDefinitionRowValue = import from TableDefinitionMethods§
public function run(
string $sql,
callable(string): StatementInterface|false $executor,
ResultColumnTypeResolver $typeResolver,
): array<int, Row>Execute SQL using the provided executor and return result rows.
Parameters
$sql | string | |
$executor | callable(string): StatementInterface|false | |
$typeResolver | ResultColumnTypeResolver |
Returns
array<int, Row>Test cases 3
Calls 1
- method-call ResultSelectRunner::runResultSet() line 31
public function runResultSet(
string $sql,
callable(string): StatementInterface|false $executor,
ResultColumnTypeResolver $typeResolver,
): ResultSetParameters
$sql | string | |
$executor | callable(string): StatementInterface|false | |
$typeResolver | ResultColumnTypeResolver |
Returns
Test cases 1
Called from 3
- method-call ZtdQuery\QueryExecutor::runResultSelectAndApplyShadow() packages/ztd-query-core/src/QueryExecutor.php:241
- method-call ZtdQuery\QueryExecutor::execStatement() packages/ztd-query-core/src/QueryExecutor.php:276
- method-call ZtdQuery\ResultSelectRunner::run() packages/ztd-query-core/src/ResultSelectRunner.php:31
Calls 2
- new ResultSet line 44
- method-call ResultSelectRunner::readResultSet() line 47
public function runStatement(
StatementInterface $statement,
ResultColumnTypeResolver $typeResolver,
array<int|string, RowValue>|null $params = null,
): array<int, Row>Execute a prepared statement and return result rows.
Parameters
$statement | StatementInterface | |
$typeResolver | ResultColumnTypeResolver | |
$params | array<int|string, RowValue>|null |
Returns
array<int, Row>Test cases 1
Calls 2
- method-call StatementInterface::execute() line 61
- method-call ResultSelectRunner::readResultSet() line 63
public function readResultSet(
StatementInterface $statement,
ResultColumnTypeResolver $typeResolver,
): ResultSetReads result set.
Parameters
$statement | StatementInterface | |
$typeResolver | ResultColumnTypeResolver |
Returns
Test cases 2
Called from 3
- method-call ZtdQuery\QueryExecutor::processExecutedStatement() packages/ztd-query-core/src/QueryExecutor.php:206
- method-call ZtdQuery\ResultSelectRunner::runResultSet() packages/ztd-query-core/src/ResultSelectRunner.php:47
- method-call ZtdQuery\ResultSelectRunner::runStatement() packages/ztd-query-core/src/ResultSelectRunner.php:63
Calls 3
- method-call StatementInterface::resultColumns() line 77
- method-call StatementInterface::fetchAll() line 78
- new ResultSet line 80
Test cases 76§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 7
ResultSelectRunnerTest::testReadResultSetPassesPlatformTypeResolverToStatementcallsResultSelectRunnerTest::testReadResultSetReadsMetadataBeforeRowscallsResultSelectRunnerTest::testRunPreservesSparseDriverRowsAndOpaqueValuescallsResultSelectRunnerTest::testRunResultSetRetainsColumnsWhenRowsAreEmptycallsResultSelectRunnerTest::testRunReturnsEmptyWhenExecutorReturnsFalsecallsResultSelectRunnerTest::testRunReturnsRowsFromExecutorcallsResultSelectRunnerTest::testRunStatementReturnsRowscalls
Other tests reaching this symbol 69
QueryExecutorBuildercallsQueryExecutorTest::testApplyShadowWritesTheMutationAndAnswersWhatItCameTocallsQueryExecutorTest::testApplyTransactionStatementDoesWhatTheStatementSayscallsQueryExecutorTest::testCommitTransactionKeepsWhatTheTransactionDidcallsQueryExecutorTest::testCopySupportIsNothingWhereTheDialectHasNoCopycallsQueryExecutorTest::testCopyTargetIsNothingWhereTheDialectHasNoCopycallsQueryExecutorTest::testCreateEmptyWriteResultAnswersASimulatedWriteWithNothingToFetchcallsQueryExecutorTest::testDisableEnableDisableEnableAndDisablecallsQueryExecutorTest::testDisableStopsZtdWithoutTouchingTheShadowcallsQueryExecutorTest::testEnableTurnsZtdBackOncallsQueryExecutorTest::testExecStatementAnswersHowManyRowsAReadStatementCameTocallsQueryExecutorTest::testForeignKeyFailureRestoresShadowStatecallsQueryExecutorTest::testIsEnabledFollowsWhatWasAskedForcallsQueryExecutorTest::testLastInsertIdIsFalseUntilSomethingHasBeenInsertedcallsQueryExecutorTest::testMutationFailureIsConvertedToDatabaseExceptioncallsQueryExecutorTest::testNeedsPostProcessingIsTrueForTheKindsThatChangeTheShadowcallsQueryExecutorTest::testParameterBindingCompilerIsNothingWhereTheDriverBindsThemItselfcallsQueryExecutorTest::testParameterBindingCompilerResultColumnTypeResolverParameterBindingCompilerDelegatesCopyTargetsToTheConfiguredPlatformSupportcallsQueryExecutorTest::testProcessExecutedStatementReadsAReadStatementStraightBackcallsQueryExecutorTest::testResultColumnTypeResolverAnswersTheOneTheSessionWasBuiltWithcallsQueryExecutorTest::testRewriteAnswersThePlanTheRewriterGivescallsQueryExecutorTest::testRollBackTransactionPutsTheShadowBackToWhereItBegancallsQueryExecutorTest::testRunResultSelectAndApplyShadowReadsBackWhatTheStatementWouldHaveWrittencallsQueryExecutorTest::testSessionTransactionsRestoreTheSameCatalogUsedByTheRewritercallsQueryExecutorTest::testShouldExecuteIsFalseOnlyForAPlanNothingIsToBeRunForcallsQueryExecutorTest::testSplitStatementsUsesPlatformRewritercallsQueryExecutorTest::testTableDefinitionReturnsRegisteredSchemaOrNullcallsQueryExecutorTest::testTransactionsAnswersWhatATransactionStatementIsAppliedTocallsQueryExecutorTest::testTransactionStatementIsNothingForAStatementThatIsNotOnecallsMysqliResultProcessorTest::testProcessCreatesAnEmptyWriteResultcallsMysqliResultProcessorTest::testProcessPreservesTheOriginalDatabaseExceptioncallsMysqliResultProcessorTest::testProcessUsesNativeRowsForTheShadowMutationcallsStatementSimulatorTest::testReadStatementReturnsFalseWhenExecutorFailscallsStatementSimulatorTest::testReadStatementReturnsRowCountcallsStatementSimulatorTest::testSimulateRefusesAWriteThePlanCarriesNoMutationForcallsStatementSimulatorTest::testUnsupportedSqlThrowscallsStatementSimulatorTest::testWriteStatementUpdatesShadowStorecallsZtdMysqliStatementTest::testAttr_getReadsTheConfiguredNativeCursorModecallsZtdMysqliStatementTest::testAttr_setUpdatesTheNativeCursorModecallsZtdMysqliStatementTest::testCloseClosesTheDelegatedStatementcallsZtdMysqliStatementTest::testData_seekMovesTheNativeCursorcallsZtdMysqliStatementTest::testExecuteAppliesRowsToTheShadowStorecallsZtdMysqliStatementTest::testExecuteDoesNotRunASkippedPlancallsZtdMysqliStatementTest::testExecuteHonorsReadAndUnplannedParameterscallsZtdMysqliStatementTest::testExecuteReturnsFalseForNativeFailurescallsZtdMysqliStatementTest::testFetchWritesBoundResultVariablescallsZtdMysqliStatementTest::testFree_resultReleasesBufferedRowscallsZtdMysqliStatementTest::testGet_resultConsumesTheCachedNativeResultOncecallsZtdMysqliStatementTest::testGet_resultReturnsFalseForAStatementWithoutRowscallsZtdMysqliStatementTest::testGet_warningsReturnsTheNativeWarningcallsZtdMysqliStatementTest::testMore_resultsReturnsFalseAfterASingleResultcallsZtdMysqliStatementTest::testNext_resultReturnsFalseWithoutAnotherResultcallsZtdMysqliStatementTest::testNum_rowsReturnsTheNativeBufferedCountcallsZtdMysqliStatementTest::testPrepareReplacesTheDelegatedStatementcallsZtdMysqliStatementTest::testResetClearsTheSimulatedAffectedRowCountcallsZtdMysqliStatementTest::testResult_metadataReturnsNativeColumnInformationcallsZtdMysqliStatementTest::testSend_long_dataConcatenatesBinaryChunkscallsZtdMysqliStatementTest::testStore_resultBuffersTheNativeRowscallsZtdMysqliStatementTest::testZtdAffectedRowsReturnsTheNativeWriteCountcallsZtdMysqliTest::testRelease_savepointRemovesTheNativeAndShadowSavepointscallsZtdPdoStatementTest::testBindValueDelegatesToInnercallsZtdPdoStatementTest::testCloseCursorDelegatesToInnercallsZtdPdoStatementTest::testColumnCountDelegatesToInnercallsZtdPdoStatementTest::testExecuteDelegatesWhenNoPlancallsZtdPdoStatementTest::testExecuteDelegatesWhenNoPostProcessingNeededcallsZtdPdoStatementTest::testExecuteReturnsFalseWhenShouldExecuteIsFalsecallsZtdPdoStatementTest::testExecuteWithoutPostProcessingRunsNativeStatementOncecallsZtdPdoStatementTest::testExecuteWrapsSimulationFailureAsAdapterExceptioncallsZtdPdoStatementTest::testRowCountDelegatesToInnerWhenNoResultcalls
Relations§
Instantiated in 1
Method calls 3
- method-call ZtdQuery\QueryExecutor::processExecutedStatement() packages/ztd-query-core/src/QueryExecutor.php:206
- method-call ZtdQuery\QueryExecutor::runResultSelectAndApplyShadow() packages/ztd-query-core/src/QueryExecutor.php:241
- method-call ZtdQuery\QueryExecutor::execStatement() packages/ztd-query-core/src/QueryExecutor.php:276