Collection::removeOne

(No version information available, might only be in Git)

Collection::removeOneУдаляет один документ из коллекции

Описание

public mysql_xdevapi\Collection::removeOne ( string $id ) : mysql_xdevapi\Result

Удаляет один документ из коллекции с соответствующим идентификатором. Сокращенная запись для Collection.remove("_id = :id").bind("id", id).execute().

Список параметров

id

Идентификатор документа коллекции, который нужно удалить. Обычно это _id, который был сгенерирован MySQL Server при добавлении записи.

Возвращаемые значения

Объект Result, который можно использовать для запроса количества затронутых элементов или количества предупреждений, сгенерированных операцией.

Примеры

Пример #1 Пример использования mysql_xdevapi\Collection::removeOne()

<?php
$session 
mysql_xdevapi\getSession("mysqlx://user:password@localhost");

$session->sql("DROP DATABASE IF EXISTS addressbook")->execute();
$session->sql("CREATE DATABASE addressbook")->execute();

$schema     $session->getSchema("addressbook");
$collection $schema->createCollection("people");

$result $collection->add('{"name": "Alfred", "age": 18, "job": "Butler"}')->execute();

// Обычно _id известен другими способами, 
// но для этого примера давайте извлечем сгенерированный идентификатор и используем его
$ids       $result->getGeneratedIds();
$alfred_id $ids[0];

$result $collection->removeOne($alfred_id);

if(!
$result->getAffectedItemsCount()) {
    echo 
"Alfred с идентификатором $alfred_id не был удален.";
} else {
    echo 
"До свидания, Alfred, ты можешь взять с собой _id $alfred_id.";
}
?>

Результатом выполнения данного примера будет что-то подобное:

До свидания, Alfred, ты можешь взять с собой _id 00005b6b536100000000000000cb.