bool
Contents
Copyright
2009-present, MongoDB, Inc.
1.30.4 Jun 08, 2025 MONGOC_COLLECTION_DROP_WITH_OPTS(3)
Description
This function requests that a collection be dropped, including all indexes associated with the
collection.
If no write concern is provided in opts, the collection's write concern is used.
If the collection does not exist, the server responds with an "ns not found" error. It is safe to ignore
this error; set the ErrorAPIVersion to 2 and ignore server error code 26:
mongoc_client_t *client;
mongoc_collection_t *collection;
bson_error_t error;
bool r;
client = mongoc_client_new (NULL);
mongoc_client_set_error_api (client, 2);
collection = mongoc_client_get_collection (client, "db", "collection");
r = mongoc_collection_drop_with_opts (collection, NULL /* opts */, &error);
if (r) {
printf ("Dropped.\n");
} else {
printf ("Error message: %s\n", error.message);
if (error.domain == MONGOC_ERROR_SERVER && error.code == 26) {
printf ("Ignoring 'ns not found' error\n");
} else {
fprintf (stderr, "Unrecognized error!\n");
}
}
mongoc_collection_destroy (collection);
mongoc_client_destroy (client);
In MongoDB 3.0 and older, the "ns not found" error code is the generic MONGOC_ERROR_QUERY_FAILURE; in
this case check whether the error message is equal to the string "ns not found".
The encryptedFields document in opts may be used to drop a collection for QueryableEncryption. If
encryptedFields is specified, the "ns not found" error is not returned.
Errors
Errors are propagated via the error parameter.
Parameters
• collection: A mongoc_collection_t.
• 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 collection, 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 SettingCollationOrder, and theMongoDBManualentryonCollation. 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.
Returns
Returns true if the collection was successfully dropped. Returns false and sets error if there are
invalid arguments or a server or network error.
Synopsis
bool
mongoc_collection_drop_with_opts (mongoc_collection_t *collection,
bson_t *opts,
bson_error_t *error);
