8.3.x Statement.php public Statement::rowCount()
8.0.x Statement.php public Statement::rowCount()
8.1.x Statement.php public Statement::rowCount()
8.2.x Statement.php public Statement::rowCount()
8.4.x Statement.php public Statement::rowCount()

Returns the number of rows affected by the last SQL statement.

Return value

The number of rows affected by the last DELETE, INSERT, or UPDATE statement executed or throws \Drupal\Core\Database\RowCountException if the last executed statement was SELECT.

Throws

\Drupal\Core\Database\RowCountException

Overrides StatementInterface::rowCount

File

core/lib/Drupal/Core/Database/Statement.php, line 136

Class

Statement
Default implementation of StatementInterface.

Namespace

Drupal\Core\Database

Code

public function rowCount() {
  // SELECT query should not use the method.
  if ($this->allowRowCount) {
    return parent::rowCount();
  }
  else {
    throw new RowCountException();
  }
}

Comments

taggartj’s picture

$sql = 'SELECT * FROM {' . $table . '} WHERE id = :id';
$result = db_query($sql, array(':id' => $id));
$result->allowRowCount = TRUE; // <-- JUST ADD THIS

if ($result->rowCount() == 0) {

labboy0276’s picture

$db = \Drupal::database();
$rows = $db->query('SELECT * FROM {TABLE}');
$rows->allowRowCount = TRUE;

if ($rows->rowCount() > 0) {
// Stuff
}