mongoc_collection_replace_one()¶
Synopsis¶
bool
mongoc_collection_replace_one (mongoc_collection_t *collection,
const bson_t *selector,
const bson_t *replacement,
const bson_t *opts,
bson_t *reply,
bson_error_t *error);
Parameters¶
collection
: A mongoc_collection_t.selector
: Abson_t
containing the query to match the document for updating.replacement
: Abson_t
containing the replacement document.reply
: Optional. An uninitializedbson_t
populated with the update result, orNULL
.error
: An optional location for a bson_error_t orNULL
.
opts
may be NULL or a BSON document with additional command options:
writeConcern
: Construct a mongoc_write_concern_t and use mongoc_write_concern_append() to add the write concern toopts
. See the example code for mongoc_client_write_command_with_opts().sessionId
: First, construct a mongoc_client_session_t with mongoc_client_start_session(). You can begin a transaction with mongoc_client_session_start_transaction(), optionally with a mongoc_transaction_opt_t that overrides the options inherited fromcollection
, and use mongoc_client_session_append() to add the session toopts
. See the example code for mongoc_client_session_t.validate
: Construct a bitwise-or of all desiredbson_validate_flags_t
. Set tofalse
to skip client-side validation of the provided BSON documents.comment
: Abson_value_t
specifying the comment to attach to this command. The comment will appear in log messages, profiler output, and currentOp output. Requires MongoDB 4.4 or later.bypassDocumentValidation
: Set totrue
to skip server-side schema validation of the provided BSON documents.collation
: Configure textual comparisons. See Setting Collation Order, and the MongoDB Manual entry on Collation. Collation requires MongoDB 3.2 or later, otherwise an error is returned.hint
: A document or string that specifies the index to use to support the query predicate.upsert
: When true, creates a new document if no document matches the query.let
: A BSON document consisting of any number of parameter names, each followed by definitions of constants in the MQL Aggregate Expression language.
Description¶
This function shall replace documents in collection
that match selector
with replacement
.
If provided, reply
will be initialized and populated with the fields matchedCount
, modifiedCount
, upsertedCount
, and optionally upsertedId
if applicable. If there is a server error then reply
contains either a writeErrors
array with one subdocument or a writeConcernErrors
array. The reply must be freed with bson_destroy()
.
Errors¶
Errors are propagated via the error
parameter.
Returns¶
Returns true
if successful. Returns false
and sets error
if there are invalid arguments or a server or network error.
A write concern timeout or write concern error is considered a failure.
See also
MongoDB update command documentation for more information on the update options.