FreeBSD Manual Pages
MONGOC_DATABA...MAND_WITH_OPTS(3) libmongoc MONGOC_DATABA...MAND_WITH_OPTS(3) SYNOPSIS bool mongoc_database_write_command_with_opts (mongoc_database_t *database, const bson_t *command, const bson_t *opts, bson_t *reply, bson_error_t *error); Execute a command on the server, applying logic that is specific to commands that write, and taking the MongoDB server version into ac- count. To send a raw command to the server without any of this logic, use mongoc_database_command_simple(). Use this function for commands that write such as "drop" or "create- Role" (but not for "insert", "update", or "delete", see Basic Write Op- erations). Write concern and collation can be overridden by various sources. In a transaction, read concern and write concern are prohib- ited in opts. The highest-priority sources for these options are listed first in the following table. The write concern is omitted for MongoDB before 3.4. +---------------+-----------+ | Write Concern | Collation | +---------------+-----------+ | opts | opts | +---------------+-----------+ | Transaction | | +---------------+-----------+ | database | | +---------------+-----------+ See the example for transactions and for the "distinct" command with opts. reply is always initialized, and must be freed with bson_destroy(). PARAMETERS • database: A mongoc_database_t. • db_name: The name of the database to run the command on. • command: A bson_t containing the command specification. • opts: A bson_t containing additional options. • reply: A maybe-NULL pointer to overwritable storage for a bson_t to contain the results. • error: An optional location for a bson_error_t or NULL. 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 to opts. 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 from database, and use mongoc_client_session_append() to add the session to opts. See the example code for mongoc_client_session_t. • collation: Configure textual comparisons. See Setting Collation Or- der, and the MongoDB Manual entry on Collation. Collation requires MongoDB 3.2 or later, otherwise an error is returned. • serverId: To target a specific server, include an int32 "serverId" field. Obtain the id by calling mongoc_client_select_server(), then mongoc_server_description_id() on its return value. Consult the MongoDB Manual entry on Database Commands for each com- mand's arguments. 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. BASIC WRITE OPERATIONS Do not use this function to call the basic write commands "insert", "update", and "delete". Those commands require special logic not imple- mented in mongoc_database_write_command_with_opts. For basic write op- erations use CRUD functions such as mongoc_collection_insert_one() and the others described in the CRUD tutorial, or use the Bulk API. EXAMPLE See the example code for mongoc_client_read_command_with_opts(). AUTHOR MongoDB, Inc COPYRIGHT 2009-present, MongoDB, Inc. 1.30.2 Apr 12, 2025MONGOC_DATABA...MAND_WITH_OPTS(3)
SYNOPSIS | PARAMETERS | ERRORS | RETURNS | BASIC WRITE OPERATIONS | EXAMPLE | AUTHOR | COPYRIGHT
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mongoc_database_write_command_with_opts&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>