MongoDB\Driver\BulkWriteCommand::updateOne

(mongodb >=2.1.0)

MongoDB\Driver\BulkWriteCommand::updateOneДобавляет операцию updateOne

Описание

public MongoDB\Driver\BulkWriteCommand::updateOne(
    string $namespace,
    array|object $filter,
    array|object $update,
    ?array $options = null
): void

Метод добавляет операцию updateOne в объект MongoDB\Driver\BulkWriteCommand. Операция обновит в коллекции, которую определяет пространство имён namespace, первый документ, который соответствует фильтру filter.

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

namespace (string)

Полностью определённое имя (т.е. "databaseName.collectionName").

filter (array|object)

» Предикат запроса. Пустой предикат совпадёт со всеми элементами коллекции.

Замечание: СУБД MongoDB при оценке критериев запроса сравнивает типы и значения по внутренним » правилам сравнения BSON-типов, которые не совпадают с правилами сравнения и жонглирования типами в PHP. При сопоставлении специального BSON-типа в запросе требуется передать объект BSON-класса, который соответствует типу BSON-значения, поэтому для сопоставления с BSON-типом » ObjectId указывают объект класса MongoDB\BSON\ObjectId.

update (array|object)

Документ, который содержит либо операторы обновления наподобие $set, либо » конвейер агрегации.

options

Опции
Опция Тип Описание Стандартное значение
arrayFilters array

Массив документов, каждый из которых содержит условия фильтрации. Документы определяют, какие элементы массива требуется изменить при обновлении поля массива. Подробнее об этом рассказывает страница руководства MongoDB » Определение фильтра arrayFilters для операций обновления массива.

collation array|object

» Сопоставление позволяет пользователям указывать специфичные для конкретного языка правила для сравнения строк, такие как реакцию на регистр букв и надстрочные знаки. Если задали сопоставление, то поле "locale" также обязательно. Описание полей смотрите в разделе » Сопоставление.

Если сопоставление не задали явно, но у коллекции определили сопоставление по умолчанию, то будет выбрано оно. Если нет ни того ни того, то MongoDB будет использовать простое бинарное сравнение строк.

Эта опция доступна в MongoDB 3.4+ и, если будет использована для более старых версий, вызовет исключение во время исполнения.

hint string|array|object

Спецификация индекса. Опция указывает либо название индекса в виде строки, либо шаблон ключа индекса. При установке значения система запросов ограничит поиск только теми планами, которые выполняют сканирование через заданный индекс.

sort array|object

Указывает, какой документ обновит операция, если запросу соответствует больше одного документа. Операция обновит первый документ, который соответствует порядку сортировки.

upsert bool Операция вставляет один документ, если фильтр filter не соответствует существующему документу. Документ создаётся путём применения операторов из параметра update к значениям полей в фильтре filter. false

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

Функция не возвращает значения после выполнения.

Ошибки

Примеры

Пример #1 Пример добавления операции обновления методом MongoDB\Driver\BulkWriteCommand::updateOne()

<?php

$manager
= new MongoDB\Driver\Manager();

$bulk = new MongoDB\Driver\BulkWriteCommand();
$bulk->updateOne('db.coll', ['x' => 1], ['$set' => ['y' => 2]]);

$result = $manager->executeBulkWriteCommand($bulk);

?>

Смотрите также

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top