MongoDB\Driver\BulkWriteCommand::updateOne
(mongodb >=2.1.0)
MongoDB\Driver\BulkWriteCommand::updateOne — Add an updateOne operation
说明
string
$namespace,array|object
$filter,array|object
$update,?array
$options = null): void
Add an updateOne operation to the
MongoDB\Driver\BulkWriteCommand. The first document
matching filter in the collection identified by
namespace will be updated.
参数
namespace(string)-
A fully qualified namespace (e.g.
"databaseName.collectionName"). filter(array|object)-
The » query predicate. An empty predicate will match all documents in the collection.
注意: When evaluating query criteria, MongoDB compares types and values according to its own » comparison rules for BSON types, which differs from PHP's comparison and type juggling rules. When matching a special BSON type the query criteria should use the respective BSON class (e.g. use MongoDB\BSON\ObjectId to match an » ObjectId).
update(array|object)-
A document containing either update operators (e.g.
$set) or an » aggregation pipeline. options-
options Option Type Description Default arrayFilters array An array of filter documents that determines which array elements to modify for an update operation on an array field. See » Specify arrayFilters for Array Update Operations in the MongoDB manual for more information.
collation array|object » Collation allows users to specify language-specific rules for string comparison, such as rules for lettercase and accent marks. When specifying collation, the
"locale"field is mandatory; all other collation fields are optional. For descriptions of the fields, see » Collation Document.If the collation is unspecified but the collection has a default collation, the operation uses the collation specified for the collection. If no collation is specified for the collection or for the operation, MongoDB uses the simple binary comparison used in prior versions for string comparisons.
This option is available in MongoDB 3.4+ and will result in an exception at execution time if specified for an older server version.
hint string|array|object Index specification. Specify either the index name as a string or the index key pattern. If specified, then the query system will only consider plans using the hinted index.
sort array|object Specify which document the operation updates if the query matches multiple documents. The first document matched by the sort order will be updated.
upsert bool If filterdoes not match an existing document, insert a single document. The document will be created by applying operators inupdateto any field values infilter.false
返回值
没有返回值。
错误/异常
- Throws MongoDB\Driver\Exception\InvalidArgumentException on argument parsing errors.
示例
示例 #1 MongoDB\Driver\BulkWriteCommand::updateOne() example
<?php
$manager = new MongoDB\Driver\Manager;
$bulk = new MongoDB\Driver\BulkWriteCommand;
$bulk->updateOne('db.coll', ['x' => 1], ['$set' => ['y' => 2]]);
$result = $manager->executeBulkWriteCommand($bulk);
?>参见
- MongoDB\Driver\BulkWriteCommand::replaceOne() - Add a replaceOne operation
- MongoDB\Driver\BulkWriteCommand::updateMany() - Add an updateMany operation
- MongoDB\Driver\Manager::executeBulkWriteCommand() - Execute write operations using the bulkWrite command
- MongoDB\Driver\BulkWriteCommandResult