function Truncate::execute
Same name in this branch
- 11.x core/lib/Drupal/Core/Database/Query/Truncate.php \Drupal\Core\Database\Query\Truncate::execute()
Same name and namespace in other branches
- 9 core/modules/pgsql/src/Driver/Database/pgsql/Truncate.php \Drupal\pgsql\Driver\Database\pgsql\Truncate::execute()
- 9 core/lib/Drupal/Core/Database/Query/Truncate.php \Drupal\Core\Database\Query\Truncate::execute()
- 8.9.x core/lib/Drupal/Core/Database/Driver/pgsql/Truncate.php \Drupal\Core\Database\Driver\pgsql\Truncate::execute()
- 8.9.x core/lib/Drupal/Core/Database/Query/Truncate.php \Drupal\Core\Database\Query\Truncate::execute()
- 10 core/modules/pgsql/src/Driver/Database/pgsql/Truncate.php \Drupal\pgsql\Driver\Database\pgsql\Truncate::execute()
- 10 core/lib/Drupal/Core/Database/Query/Truncate.php \Drupal\Core\Database\Query\Truncate::execute()
Executes the TRUNCATE query.
In most cases, TRUNCATE is not a transaction safe statement as it is a DDL statement which results in an implicit COMMIT. When we are in a transaction, fallback to the slower, but transactional, DELETE. PostgreSQL also locks the entire table for a TRUNCATE strongly reducing the concurrency with other transactions.
Return value
int|null Return value is dependent on whether the executed SQL statement is a TRUNCATE or a DELETE. TRUNCATE is DDL and no information on affected rows is available. DELETE is DML and will return the number of affected rows. In general, do not rely on the value returned by this method in calling code.
Overrides Truncate::execute
File
-
core/
modules/ pgsql/ src/ Driver/ Database/ pgsql/ Truncate.php, line 15
Class
- Truncate
- PostgreSQL implementation of \Drupal\Core\Database\Query\Truncate.
Namespace
Drupal\pgsql\Driver\Database\pgsqlCode
public function execute() {
$this->connection
->addSavepoint();
try {
$result = parent::execute();
} catch (\Exception $e) {
$this->connection
->rollbackSavepoint();
throw $e;
}
$this->connection
->releaseSavepoint();
return $result;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.