public function Connection::query in Drupal 10
3 calls to Connection::query()
- Connection::hasJson in core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
- Connection::nextId in core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
- Retrieve a the next id in a sequence.
- Connection::queryRange in core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
File
- core/modules/pgsql/src/Driver/Database/pgsql/Connection.php, line 150
Class
- Connection
- PostgreSQL implementation of \Drupal\Core\Database\Connection.
Namespace
Drupal\pgsql\Driver\Database\pgsql
Code
public function query($query, array $args = [], $options = []) {
$options += $this
->defaultOptions();
foreach ($args as &$value) {
if (is_bool($value)) {
$value = (int) $value;
}
}
$wrap_with_savepoint = $this
->inTransaction() && !isset($this->transactionLayers['mimic_implicit_commit']) && !(is_string($query) && (stripos($query, 'ROLLBACK TO SAVEPOINT ') === 0 || stripos($query, 'RELEASE SAVEPOINT ') === 0 || stripos($query, 'SAVEPOINT ') === 0));
if ($wrap_with_savepoint) {
$this
->addSavepoint();
try {
$return = parent::query($query, $args, $options);
$this
->releaseSavepoint();
} catch (\Exception $e) {
$this
->rollbackSavepoint();
throw $e;
}
}
else {
$return = parent::query($query, $args, $options);
}
return $return;
}