public function Connection::prepareStatement in Drupal 9
Same name in this branch
- 9 core/lib/Drupal/Core/Database/Connection.php \Drupal\Core\Database\Connection::prepareStatement()
- 9 core/lib/Drupal/Core/Database/Driver/sqlite/Connection.php \Drupal\Core\Database\Driver\sqlite\Connection::prepareStatement()
- 9 core/lib/Drupal/Core/Database/Driver/pgsql/Connection.php \Drupal\Core\Database\Driver\pgsql\Connection::prepareStatement()
Returns a prepared statement given a SQL string.
This method caches prepared statements, reusing them when possible. It also prefixes tables names enclosed in curly braces and, optionally, quotes identifiers enclosed in square brackets.
Parameters
string $query: The query string as SQL, with curly braces surrounding the table names, and square brackets surrounding identifiers.
array $options: An associative array of options to control how the query is run. See the documentation for self::defaultOptions() for details. The content of the 'pdo' key will be passed to the prepared statement.
bool $allow_row_count: (optional) A flag indicating if row count is allowed on the statement object. Defaults to FALSE.
Return value
\Drupal\Core\Database\StatementInterface A PDO prepared statement ready for its execute() method.
Throws
\InvalidArgumentException If multiple statements are included in the string, and delimiters are not allowed in the query.
\Drupal\Core\Database\DatabaseExceptionWrapper
Overrides Connection::prepareStatement
1 call to Connection::prepareStatement()
- Connection::nextId in core/
lib/ Drupal/ Core/ Database/ Driver/ sqlite/ Connection.php - Retrieves a unique ID from a given sequence.
File
- core/
lib/ Drupal/ Core/ Database/ Driver/ sqlite/ Connection.php, line 433
Class
- Connection
- SQLite implementation of \Drupal\Core\Database\Connection.
Namespace
Drupal\Core\Database\Driver\sqliteCode
public function prepareStatement(string $query, array $options, bool $allow_row_count = FALSE) : StatementInterface {
try {
$query = $this
->preprocessStatement($query, $options);
$statement = new Statement($this->connection, $this, $query, $options['pdo'] ?? [], $allow_row_count);
} catch (\Exception $e) {
$this
->exceptionHandler()
->handleStatementException($e, $query, $options);
}
return $statement;
}