Saltar al contenido principal
Database

MongoDB

MongoDB

El módulo MongoDB es responsable de conectarse a una base de datos MongoDB, realizar operaciones de CRUD y manipular los resultados dentro del robot.

js
const connection = await Database.MongoDB.connection["v1_0_0"]({
connectionString: 'mongodb://userRoberty:robertyBD123@localhost:27017',
})

Métodos

connection

Método responsable de crear una conexión con una base de datos MongoDB.

js
const connection = await Database.MongoDB.connection["v1_0_0"]({
connectionString: 'mongodb://userRoberty:robertyBD123@localhost:27017',
})

Parámetros obligatorios

  • connectionString: String - string de conexión con la base de datos MongoDB. Se debe seguir el estándar conforme al ejemplo mostrado anteriormente.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la connection del ejemplo mostrado anteriormente, recibirá el objeto de conexión (MongoClient), que puede utilizarse como parámetro en los otros métodos.

selectDb

Método responsable de seleccionar una base de datos a partir de una conexión MongoDB.

js
const db = await Database.MongoDB.selectDb["v1_0_0"]({
connection: connection,
dbName: 'meuBancoDeDados',
})

Parámetros obligatorios

  • connection: Retorno de la acción de conexión - espera la conexión obtenida a través de la acción connection.
  • dbName: String - nombre de la base de datos que será seleccionada.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la db del ejemplo mostrado anteriormente, recibirá el objeto de la base de datos (Db), que puede utilizarse como parámetro en los otros métodos.

selectCollection

Método responsable de seleccionar una colección dentro de una base de datos MongoDB.

js
const collection = await Database.MongoDB.selectCollection["v1_0_0"]({
db: db,
collectionName: 'minhaColecao',
})

Parámetros obligatorios

  • db: Retorno de la acción selectDb - espera la base de datos obtenida a través de la acción selectDb.
  • collectionName: String - nombre de la colección que será seleccionada.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la collection del ejemplo mostrado anteriormente, recibirá el objeto de la colección (Collection), que puede utilizarse como parámetro en los otros métodos.

insertOne

Método responsable de insertar un único documento en una colección MongoDB.

js
const result = await Database.MongoDB.insertOne["v1_0_0"]({
collection: collection,
document: { nome: 'Roberty', idade: 30 },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • document: Object - objeto que será insertado en la colección.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.insertedId: any - ID del documento insertado.

insertMany

Método responsable de insertar varios documentos en una colección MongoDB.

js
const result = await Database.MongoDB.insertMany["v1_0_0"]({
collection: collection,
documents: [
{ nome: 'Roberty', idade: 30 },
{ nome: 'Automation', idade: 5 },
],
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • documents: Object[] - array de objetos que serán insertados en la colección.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.insertedIds: any[] - array con los IDs de los documentos insertados.

findOne

Método responsable de buscar un único documento en una colección MongoDB.

js
const result = await Database.MongoDB.findOne["v1_0_0"]({
collection: collection,
findFilter: { nome: 'Roberty' },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro de búsqueda en el formato de objeto MongoDB.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con las siguientes propiedades:

  • result.document: Object - documento encontrado. Será null si no se encuentra ningún documento.
  • result.found: Boolean - indica si el documento fue encontrado.

findMany

Método responsable de buscar varios documentos en una colección MongoDB.

js
const result = await Database.MongoDB.findMany["v1_0_0"]({
collection: collection,
findFilter: { idade: { $gte: 18 } },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro de búsqueda en el formato de objeto MongoDB.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un array de objetos con los documentos encontrados.

updateOne

Método responsable de actualizar un único documento en una colección MongoDB.

js
const result = await Database.MongoDB.updateOne["v1_0_0"]({
collection: collection,
filter: { nome: 'Roberty' },
updateFilter: { $set: { idade: 31 } },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • filter: Object - filtro para localizar el documento que será actualizado.
  • updateFilter: Object - objeto de actualización en el formato MongoDB (ej.: { $set: { campo: valor } }).

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.modified: Boolean - indica si el documento fue modificado.

updateMany

Método responsable de actualizar varios documentos en una colección MongoDB.

js
const result = await Database.MongoDB.updateMany["v1_0_0"]({
collection: collection,
filter: { ativo: false },
updateFilter: { $set: { ativo: true } },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • filter: Object - filtro para localizar los documentos que serán actualizados.
  • updateFilter: Object - objeto de actualización en el formato MongoDB (ej.: { $set: { campo: valor } }).

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.modifiedCount: Number - cantidad de documentos modificados.

deleteOne

Método responsable de eliminar un único documento de una colección MongoDB.

js
const result = await Database.MongoDB.deleteOne["v1_0_0"]({
collection: collection,
findFilter: { nome: 'Roberty' },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro para localizar el documento que será eliminado.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.deleted: Boolean - indica si el documento fue eliminado.

deleteMany

Método responsable de eliminar varios documentos de una colección MongoDB.

js
const result = await Database.MongoDB.deleteMany["v1_0_0"]({
collection: collection,
findFilter: { ativo: false },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro para localizar los documentos que serán eliminados.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.deletedCount: Number - cantidad de documentos eliminados.

countDocuments

Método responsable de contar el número de documentos en una colección MongoDB que corresponden a un filtro.

js
const result = await Database.MongoDB.countDocuments["v1_0_0"]({
collection: collection,
findFilter: { ativo: true },
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • findFilter: Object - filtro para localizar los documentos que serán contados.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.count: Number - cantidad de documentos que corresponden al filtro.

aggregation

Método responsable de ejecutar un pipeline de agregación en una colección MongoDB.

js
const result = await Database.MongoDB.aggregation["v1_0_0"]({
collection: collection,
pipeline: [
{ $match: { ativo: true } },
{ $group: { _id: '$categoria', total: { $sum: 1 } } },
],
})

Parámetros obligatorios

  • collection: Retorno de la acción selectCollection - espera la colección obtenida a través de la acción selectCollection.
  • pipeline: Object[] - array de etapas del pipeline de agregación de MongoDB.

Parámetros opcionales

  • session: Retorno de la acción startTransaction - sesión de transacción obtenida a través de la acción startTransaction.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.aggregation: AggregationCursor - cursor con los resultados de la agregación.

startTransaction

Método responsable de iniciar una transacción en una conexión MongoDB.

js
const session = await Database.MongoDB.startTransaction["v1_0_0"]({
connection: connection,
})

Parámetros obligatorios

  • connection: Retorno de la acción de conexión - espera la conexión obtenida a través de la acción connection.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la session del ejemplo mostrado anteriormente, recibirá un objeto del tipo ClientSession que puede pasarse como parámetro session en las acciones de CRUD.

commitTransaction

Método responsable de confirmar (commit) una transacción iniciada en una conexión MongoDB.

js
await Database.MongoDB.commitTransaction["v1_0_0"]({
session: session,
})

Parámetros obligatorios

  • session: Retorno de la acción startTransaction - espera la sesión obtenida a través de la acción startTransaction.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

abortTransaction

Método responsable de deshacer (rollback) una transacción iniciada en una conexión MongoDB.

js
await Database.MongoDB.abortTransaction["v1_0_0"]({
session: session,
})

Parámetros obligatorios

  • session: Retorno de la acción startTransaction - espera la sesión obtenida a través de la acción startTransaction.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.