MongoDB C++ Driver  mongocxx-3.3.0
All Classes Namespaces Functions Enumerations Enumerator Friends Pages
Classes | Public Member Functions | List of all members
mongocxx::bulk_write Class Reference

Class representing a batch of write operations that can be sent to the server as a group. More...

#include <bulk_write.hpp>

Classes

struct  deprecated_tag
 

Public Member Functions

MONGOCXX_DEPRECATED bulk_write (options::bulk_write options={})
 Initializes a new bulk operation to be executed against a mongocxx::collection. More...
 
 bulk_write (bulk_write &&) noexcept
 Move constructs a bulk write operation.
 
bulk_writeoperator= (bulk_write &&) noexcept
 Move assigns a bulk write operation.
 
 ~bulk_write ()
 Destroys a bulk write operation.
 
bulk_writeappend (const model::write &operation)
 Appends a single write to the bulk write operation. More...
 
stdx::optional< result::bulk_writeexecute () const
 Executes a bulk write. More...
 

Detailed Description

Class representing a batch of write operations that can be sent to the server as a group.

If you have a lot of write operations to execute, it can be more efficient to send them as part of a bulk_write in order to avoid unnecessary network-level round trips between the driver and the server.

Bulk writes affect a single collection only and are executed via the bulk_write::execute() method. Options that you would typically specify for individual write operations (such as write concern) are instead specified for the aggregate operation.

See also
https://docs.mongodb.com/master/core/crud/
https://docs.mongodb.com/master/core/bulk-write-operations/

Constructor & Destructor Documentation

◆ bulk_write()

MONGOCXX_DEPRECATED mongocxx::bulk_write::bulk_write ( options::bulk_write  options = {})
explicit

Initializes a new bulk operation to be executed against a mongocxx::collection.

Parameters
optionsOptional arguments; see mongocxx::options::bulk_write.
Deprecated:
Bulk writes created with this constructor will not inherit write concerns from the collection, database, or client. mongocxx::collection::create_bulk_write should be used instead.

Member Function Documentation

◆ append()

bulk_write& mongocxx::bulk_write::append ( const model::write operation)

Appends a single write to the bulk write operation.

The write operation's contents are copied into the bulk operation completely, so there is no dependency between the life of an appended write operation and the bulk operation itself.

Parameters
operationThe write operation to append (an instance of model::write)

A model::write can be implicitly constructed from any of the following MongoDB models:

Returns
A reference to the object on which this member function is being called. This facilitates method chaining.
Exceptions
mongocxx::logic_errorif the given operation is invalid.

◆ execute()

stdx::optional<result::bulk_write> mongocxx::bulk_write::execute ( ) const

Executes a bulk write.

Exceptions
mongocxx::bulk_write_exceptionwhen there are errors processing the writes.
Returns
The optional result of the bulk operation execution, a result::bulk_write.
See also
https://docs.mongodb.com/master/core/bulk-write-operations/

The documentation for this class was generated from the following file: