function Delete::execute

Same name in this branch
  1. main core/lib/Drupal/Core/Database/Query/Delete.php \Drupal\Core\Database\Query\Delete::execute()
Same name and namespace in other branches
  1. 11.x core/modules/pgsql/src/Driver/Database/pgsql/Delete.php \Drupal\pgsql\Driver\Database\pgsql\Delete::execute()
  2. 11.x core/lib/Drupal/Core/Database/Query/Delete.php \Drupal\Core\Database\Query\Delete::execute()
  3. 10 core/modules/pgsql/src/Driver/Database/pgsql/Delete.php \Drupal\pgsql\Driver\Database\pgsql\Delete::execute()
  4. 10 core/lib/Drupal/Core/Database/Query/Delete.php \Drupal\Core\Database\Query\Delete::execute()
  5. 9 core/modules/pgsql/src/Driver/Database/pgsql/Delete.php \Drupal\pgsql\Driver\Database\pgsql\Delete::execute()
  6. 9 core/lib/Drupal/Core/Database/Query/Delete.php \Drupal\Core\Database\Query\Delete::execute()
  7. 8.9.x core/lib/Drupal/Core/Database/Driver/pgsql/Delete.php \Drupal\Core\Database\Driver\pgsql\Delete::execute()
  8. 8.9.x core/lib/Drupal/Core/Database/Query/Delete.php \Drupal\Core\Database\Query\Delete::execute()

Executes the DELETE query.

Return value

int The number of rows affected by the delete query.

Overrides Delete::execute

File

core/modules/pgsql/src/Driver/Database/pgsql/Delete.php, line 15

Class

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

Namespace

Drupal\pgsql\Driver\Database\pgsql

Code

public function execute() {
  if ($this->connection
    ->inTransaction()) {
    $savepoint = $this->connection
      ->startTransaction('mimic_implicit_commit');
  }
  try {
    $result = parent::execute();
    if (isset($savepoint)) {
      $savepoint->commitOrRelease();
    }
    return $result;
  } catch (\Exception $e) {
    if (isset($savepoint)) {
      $savepoint->rollback();
    }
    throw $e;
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.