Provided by: libmongodb-perl_2.2.2-2_all
NAME
MongoDB::BulkWriteView - Bulk write operations against a query document
VERSION
version v2.2.2
SYNOPSIS
my $bulk = $collection->initialize_ordered_bulk_op; # Update one document matching the selector bulk->find( { a => 1 } )->update_one( { '$inc' => { x => 1 } } ); # Update all documents matching the selector bulk->find( { a => 2 } )->update_many( { '$inc' => { x => 2 } } ); # Update all documents matching the selector, with respect to a collation bulk->find( { a => { '$gte' => 'F' } )->collation($collation) ->update_many( { '$inc' => { x => 2 } } ); # Update all documents bulk->find( {} )->update_many( { '$inc' => { x => 2 } } ); # Replace entire document (update with whole doc replace) bulk->find( { a => 3 } )->replace_one( { x => 3 } ); # Update one document matching the selector or upsert bulk->find( { a => 1 } )->upsert()->update_one( { '$inc' => { x => 1 } } ); # Update all documents matching the selector or upsert bulk->find( { a => 2 } )->upsert()->update_many( { '$inc' => { x => 2 } } ); # Replaces a single document matching the selector or upsert bulk->find( { a => 3 } )->upsert()->replace_one( { x => 3 } ); # Remove a single document matching the selector bulk->find( { a => 4 } )->delete_one(); # Remove all documents matching the selector bulk->find( { a => 5 } )->delete_many(); # Update any arrays with the matching filter bulk->find( {} )->arrayFilters([ { 'i.b' => 1 } ])->update_many( { '$set' => { 'y.$[i].b' => 2 } } ); # Remove all documents matching the selector, with respect to a collation bulk->find( { a => { '$gte' => 'F' } )->collation($collation)->delete_many(); # Remove all documents bulk->find( {} )->delete_many();
DESCRIPTION
This class provides means to specify write operations constrained by a query document. To instantiate a "MongoDB::BulkWriteView", use the find method from MongoDB::BulkWrite. Except for "arrayFilters", "collation" and "upsert", all methods have an empty return on success; an exception will be thrown on error.
METHODS
arrayFilters $bulk->arrayFilters( $array_filters )->update_many( $modification ); Returns a new "MongoDB::BulkWriteView" object, where the specified arrayFilter will be used to determine which array elements to modify for an update operation on an array field. collation $bulk->collation( $collation )->delete_one; Returns a new "MongoDB::BulkWriteView" object, where the specified collation will be used to determine which documents match the query document. A collation can be specified for any deletion, replacement, or update. delete_many $bulk->delete_many; Removes all documents matching the query document. delete_one $bulk->delete_one; Removes a single document matching the query document. replace_one $bulk->replace_one( $doc ); Replaces the document matching the query document. The document to replace must not have any keys that begin with a dollar sign, "$". update_many $bulk->update_many( $modification ); Updates all documents matching the query document. The modification document must have all its keys begin with a dollar sign, "$". update_one $bulk->update_one( $modification ); Updates a single document matching the query document. The modification document must have all its keys begin with a dollar sign, "$". upsert $bulk->upsert->replace_one( $doc ); Returns a new "MongoDB::BulkWriteView" object that will treat every update, update_one or replace_one operation as an upsert operation.
AUTHORS
• David Golden <david@mongodb.com> • Rassi <rassi@mongodb.com> • Mike Friedman <friedo@friedo.com> • Kristina Chodorow <k.chodorow@gmail.com> • Florian Ragwitz <rafl@debian.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2020 by MongoDB, Inc. This is free software, licensed under: The Apache License, Version 2.0, January 2004