Обновление MongoDB: как проверить, успешно выполняется ли обновление или перестало работать?

Я работаю с MongoDB в PHP использование pecl драйвера. Мои обновления работают отлично, но я хотел бы встроить некоторую проверку ошибок в свою функцию (функции).

Я попытался использовать lastError () в довольно простой функции:

function system_db_update_object($query, $values, $database, $collection) {
    $connection = new Mongo();
    $collection = $connection->$database->$collection;
    $connection->$database->resetError(); //Added for debugging
    $collection->update(
        $query,
        array('$set' => $values));
    //$errorArray = $connection->$database->lastError();
    var_dump($connection->$database->lastError());exit; // Var dump and /Exit/
}

Но в значительной степени независимо от того, что я пытаюсь обновить (ли это существует или не) я получаю эти те же основные результаты:

array(4) {
  ["err"]=>
  NULL
  ["updatedExisting"]=>
  bool(true)
  ["n"]=>
  float(1)
  ["ok"]=>
  float(1)
}

Как я знаю, успешно выполняется ли обновление или отказавший?

9
задан Eric Leschinski 22 January 2013 в 14:16
поделиться

1 ответ

поле «n» - это количество обновленных документов, а « updatedExisting "сообщает, обновлялся ли вообще какой-либо документ. вы должны иметь возможность проверить эти поля, чтобы узнать, удалось ли выполнить обновление.

4
ответ дан 4 December 2019 в 22:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: