Как я могу получить количество удаленных строк


Как я могу получить количество удаленных строк после db_delete?

db_delete('node')
  ->condition('uid', 1)
  ->execute();

Что-то вроде

$count = db_delete('node')
  ->condition('uid', 1)
  ->execute()->columnCount();

Не работает

 2
Author: milkovsky, 2013-03-28

3 answers

Запрос на удаление вернет объект запроса для всех методов, кроме ->выполнить(). Методы могут быть объединены в цепочку до тех пор, пока запрос не будет собран. Функция Execute() завершает цепочку.

Попробуйте:

$count = db_delete('node')
  ->condition('uid', 1)
  ->execute();
 7
Author: Triskelion, 2013-03-28 17:15:26

Работает следующее выражение:

$count= db_delete('node')
  ->condition('uid', 1)
  ->execute();

dpm($count);

Db_delete возвращает количество удаленных строк после выполнения.

 2
Author: milkovsky, 2013-03-28 17:22:12

Вы можете получить количество удаленных строк следующим образом:

db_delete('node')
  ->condition('uid', 1)
  ->execute();

$count = db_query('SELECT ROW_COUNT()')->fetchField();

print($count);
 1
Author: Aboodred1, 2013-03-28 17:03:35