Main Content

update

Update one or multiple documents in MongoDB collection

Since R2021b

Description

n = update(conn,collection,findquery,updatequery) returns the number of documents updated in a collection using the MongoDB® C++ interface connection. Use MongoDB queries to find and update documents.

example

Examples

collapse all

Connect to MongoDB® using the MongoDB C++ interface and update documents in a collection. Find documents to update by using a MongoDB query. Specify the criteria for the update by using a MongoDB query. In this example, the collection represents employee data.

Create a MongoDB connection to the database mongotest using the MongoDB C++ interface. Here, the database server dbtb01 hosts this database using port number 27017.

server = "dbtb01";
port = 27017;
dbname = "mongotest";
conn = mongoc(server,port,dbname)
conn = connection with properties:
           Database: "mongotest"
           UserName: ""
             Server: "dbtb01"
               Port: 27017
    CollectionNames: [13×1 string]

conn is the connection object that contains the MongoDB connection. The object properties contain information about the connection and the database.

  • The database name is mongotest.

  • The user name is blank.

  • The database server is dbtb01.

  • The port number is 27017.

  • This database contains 13 document collections.

Verify the MongoDB connection.

isopen(conn)
ans = logical
   1

The database connection is successful because the isopen function returns 1. Otherwise, the database connection is closed.

Specify the employees collection. Create a MongoDB query to find employees in the department where the department identifier is set to 90. Then, create a MongoDB query to increase the value in the salary field by 5000.

collection = "employees";
findquery = "{""department_id"":90}";
updatequery = "{""$inc"":{""salary"":5000}}";

Increase the salaries for all employees in the department using the MongoDB connection. The update function updates four documents in the collection.

n = update(conn,collection,findquery,updatequery)
n = int64
    4

Close the MongoDB connection.

close(conn)

Input Arguments

collapse all

MongoDB C++ interface connection, specified as a connection object.

Collection name, specified as a string scalar.

Example: "taxidata"

Data Types: string

MongoDB find query, specified as a string scalar or character vector. Specify a JSON-style string to find documents in the database.

Example: "{""department"":""Sales""}" finds all documents where the department field is equal to Sales.

Example: "{""_id"":{""$oid"":""593fec95b78dc311e01e9204""}}" finds the document that has the identifier 593fec95b78dc311e01e9204.

Data Types: char | string

MongoDB update query, specified as a string scalar or character vector. Use a JSON-style string to specify the criteria for the update.

Example: "{""$inc"":{""salary"":5000}}" increases the values in the salary field by 5000.

Data Types: char | string

Output Arguments

collapse all

Number of documents updated in a collection in the database, returned as a numeric scalar.

Version History

Introduced in R2021b