# mongoc_database_command()

## Synopsis

    mongoc_cursor_t *
    mongoc_database_command (mongoc_database_t         *database,
                             mongoc_query_flags_t       flags,
                             uint32_t                   skip,
                             uint32_t                   limit,
                             uint32_t                   batch_size,
                             const bson_t              *command,
                             const bson_t              *fields,
                             const mongoc_read_prefs_t *read_prefs);

## Parameters

database | A mongoc_database_t.
flags | A mongoc_query_flags_t.
skip | The number of documents to skip on the server.
limit | The maximum number of documents to return from the cursor.
batch_size | Attempt to batch results from the server in groups of batch_size documents.
command | A bson_t containing the command.
fields | An optional bson_t containing the fields to return. NULL for all fields.
read_prefs | An optional mongoc_read_prefs_t.

The mongoc_database_command() function shall execute a command on a database. This is performed lazily after calling mongoc_cursor_next() on the resulting cursor structure.

## Returns

This command returns a mongoc_cursor_t that should be freed with mongoc_cursor_destroy() when no longer in use.

## See Also

mongoc_cursor_next()