You are here

public function Truncate::execute in Drupal 10

Same name in this branch
  1. 10 core/lib/Drupal/Core/Database/Query/Truncate.php \Drupal\Core\Database\Query\Truncate::execute()
  2. 10 core/modules/pgsql/src/Driver/Database/pgsql/Truncate.php \Drupal\pgsql\Driver\Database\pgsql\Truncate::execute()

Executes the TRUNCATE query.

Return value

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

See also

https://learnsql.com/blog/difference-between-truncate-delete-and-drop-ta...

File

core/modules/pgsql/src/Driver/Database/pgsql/Truncate.php, line 25

Class

Truncate
PostgreSQL implementation of \Drupal\Core\Database\Query\Truncate.

Namespace

Drupal\pgsql\Driver\Database\pgsql

Code

public function execute() {
  $this->connection
    ->addSavepoint();
  try {
    $result = parent::execute();
  } catch (\Exception $e) {
    $this->connection
      ->rollbackSavepoint();
    throw $e;
  }
  $this->connection
    ->releaseSavepoint();
  return $result;
}