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()
Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/Database/Query/Truncate.php \Drupal\Core\Database\Query\Truncate::execute()
  2. 9 core/lib/Drupal/Core/Database/Query/Truncate.php \Drupal\Core\Database\Query\Truncate::execute()

Executes the TRUNCATE query.

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 Query::execute

See also

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

1 call to Truncate::execute()
Truncate::execute in core/modules/pgsql/src/Driver/Database/pgsql/Truncate.php
Executes the TRUNCATE query.
1 method overrides Truncate::execute()
Truncate::execute in core/modules/pgsql/src/Driver/Database/pgsql/Truncate.php
Executes the TRUNCATE query.

File

core/lib/Drupal/Core/Database/Query/Truncate.php, line 50

Class

Truncate
General class for an abstracted TRUNCATE operation.

Namespace

Drupal\Core\Database\Query

Code

public function execute() {
  $stmt = $this->connection
    ->prepareStatement((string) $this, $this->queryOptions, TRUE);
  try {
    $stmt
      ->execute([], $this->queryOptions);
    return $stmt
      ->rowCount();
  } catch (\Exception $e) {
    $this->connection
      ->exceptionHandler()
      ->handleExecutionException($e, $stmt, [], $this->queryOptions);
  }
  return NULL;
}