MongoDB\Driver\Manager::executeBulkWrite
(mongodb >=1.0.0)
MongoDB\Driver\Manager::executeBulkWrite — Виконує одну або кілька операцій запису
Опис
final public MongoDB\Driver\Manager::executeBulkWrite(string $namespace, MongoDB\Driver\BulkWrite $bulk, array|MongoDB\Driver\WriteConcern|null $options = null): MongoDB\Driver\WriteResult
Виконує одну або кілька операцій запису на основному сервері.
Об'єкт класу MongoDB\Driver\BulkWrite може бути створений з однією або декількома операціями запису різного типу (наприклад, оновлення, видалення та вставки). Драйвер спробує надіслати операції одного і того ж типу на сервер з мінімальною кількістю запитів, щоб скоротити звернення до сервера.
Список параметрів
namespace
(string)
Повністю певне ім'я (тобто . "databaseName.collectionName"
bulk
MongoDB\Driver\BulkWrite) .
Записи для виконання.
опції
options
Опция | Тип | Опис |
---|---|---|
session | MongoDB\Driver\Session | |
Сесія зв'язування з операцією. |
| | writeConcern |MongoDB\Driver\WriteConcern
Гарантія запису для застосування до операції.
Значення, що повертаються
У разі успішного виконання повертає MongoDB\Driver\WriteResult
Помилки
- За відсутності будь-якої операції запису в
bulk
, викидає винятокMongoDB\Driver\Exception\InvalidArgumentException - Якщо
bulk
вже був виконаний, викидає винятокMongoDB\Driver\Exception\InvalidArgumentException. Об'єктиMongoDB\Driver\BulkWriteне можуть бути виконані кілька разів. - Викидається MongoDB\Driver\Exception\InvalidArgumentExceptionякщо опція
"session"
вказано у поєднанні з непідтвердженою гарантією запису. - При помилці парсингу аргумент кидає винятокMongoDB\Driver\Exception\InvalidArgumentException
- При невдалому з'єднанні з сервером (крім помилок аутентифікації) кидає винятокMongoDB\Driver\Exception\ConnectionException
- У разі невдалої аутентифікації кидає винятокMongoDB\Driver\Exception\AuthenticationException
- При помилці запису кидає винятокMongoDB\Driver\Exception\BulkWriteException
- При помилці парсингу аргумент кидає винятокMongoDB\Driver\Exception\InvalidArgumentException
- При невдалому з'єднанні з сервером (крім помилок аутентифікації) кидає винятокMongoDB\Driver\Exception\ConnectionException
- У разі невдалої аутентифікації кидає винятокMongoDB\Driver\Exception\AuthenticationException
- При виникненні інших помилок викидає винятокMongoDB\Driver\Exception\RuntimeException
список змін
Версия | Опис |
---|---|
PECL mongodb 1.4.4 | Якщо опція "session" використовується у поєднанні з непідтвердженою гарантією запису, викидається виняток MongoDB\Driver\Exception\InvalidArgumentException |
PECL mongodb 1.4.0 | Третій параметр options тепер масив. Для зворотної сумісності цей параметр ще приймає об'єкт MongoDB\Driver\WriteConcern |
PECL mongodb 1.3.0 | Тепер викидається винятокMongoDB\Driver\Exception\InvalidArgumentException, якщо bulk не містить операцій запису. Раніше викидалося MongoDB\Driver\Exception\BulkWriteException |
Приклади
Приклад #1 Приклад використання MongoDB\Driver\Manager::executeBulkWrite()****
Loading...
Висновок наведеного прикладу буде схожим на:
Добавлено 3 документ(ов)
Найдено 1 документ(ов)
Обновлено 1 документ(ов)
Добавлено и добавлено 2 документ(ов)
Удалено 1 документ(ов)
upsertedId[3]: object(MongoDB\BSON\ObjectId)#5 (1) {
["oid"]=>
string(24) "54d3adc3ce7a792f4d703756"
}
upsertedId[4]: int(3)
Дивіться також
- MongoDB\Driver\BulkWrite
- MongoDB\Driver\WriteResult
- MongoDB\Driver\WriteConcern
- MongoDB\Driver\Server::executeBulkWrite() - Виконати одну або кілька операцій запису на сервері