Skip to main content

MongoDB

O módulo MongoDB é responsável por conectar em um banco de dados MongoDB, realizar operações de CRUD e manipular os resultados dentro do robô.

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

Métodos

connection

Método responsável por criar uma conexão com um banco de dados MongoDB.

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

Parâmetros obrigatórios

  • connectionString: String - string de conexão com o banco de dados MongoDB. O padrão deve ser seguido conforme o exemplo mostrado anteriormente.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

A constante ou variável criada, como a connection do exemplo mostrado anteriormente, receberá o objeto de conexão (MongoClient) que pode ser utilizado como parâmetro nos outros métodos.

selectDb

Método responsável por selecionar um banco de dados a partir de uma conexão MongoDB.

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

Parâmetros obrigatórios

  • connection: Retorno da ação de conexão - espera a conexão obtida através da ação connection.
  • dbName: String - nome do banco de dados a ser selecionado.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

A constante ou variável criada, como a db do exemplo mostrado anteriormente, receberá o objeto do banco de dados (Db) que pode ser utilizado como parâmetro nos outros métodos.

selectCollection

Método responsável por selecionar uma coleção dentro de um banco de dados MongoDB.

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

Parâmetros obrigatórios

  • db: Retorno da ação selectDb - espera o banco de dados obtido através da ação selectDb.
  • collectionName: String - nome da coleção a ser selecionada.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

A constante ou variável criada, como a collection do exemplo mostrado anteriormente, receberá o objeto da coleção (Collection) que pode ser utilizado como parâmetro nos outros métodos.

insertOne

Método responsável por inserir um único documento em uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • document: Object - objeto a ser inserido na coleção.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.insertedId: any - ID do documento inserido.

insertMany

Método responsável por inserir múltiplos documentos em uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • documents: Object[] - array de objetos a serem inseridos na coleção.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.insertedIds: any[] - array com os IDs dos documentos inseridos.

findOne

Método responsável por buscar um único documento em uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • findFilter: Object - filtro de busca no formato de objeto MongoDB.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com as seguintes propriedades:

  • result.document: Object - documento encontrado. Será null se nenhum documento for encontrado.
  • result.found: Boolean - indica se o documento foi encontrado.

findMany

Método responsável por buscar múltiplos documentos em uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • findFilter: Object - filtro de busca no formato de objeto MongoDB.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um array de objetos com os documentos encontrados.

updateOne

Método responsável por atualizar um único documento em uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • filter: Object - filtro para localizar o documento a ser atualizado.
  • updateFilter: Object - objeto de atualização no formato MongoDB (ex.: { $set: { campo: valor } }).

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.modified: Boolean - indica se o documento foi modificado.

updateMany

Método responsável por atualizar múltiplos documentos em uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • filter: Object - filtro para localizar os documentos a serem atualizados.
  • updateFilter: Object - objeto de atualização no formato MongoDB (ex.: { $set: { campo: valor } }).

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

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

deleteOne

Método responsável por remover um único documento de uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • findFilter: Object - filtro para localizar o documento a ser removido.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.deleted: Boolean - indica se o documento foi removido.

deleteMany

Método responsável por remover múltiplos documentos de uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • findFilter: Object - filtro para localizar os documentos a serem removidos.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.deletedCount: Number - quantidade de documentos removidos.

countDocuments

Método responsável por contar o número de documentos em uma coleção MongoDB que correspondem a um filtro.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • findFilter: Object - filtro para localizar os documentos a serem contados.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.count: Number - quantidade de documentos que correspondem ao filtro.

aggregation

Método responsável por executar um pipeline de agregação em uma coleção MongoDB.

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

Parâmetros obrigatórios

  • collection: Retorno da ação selectCollection - espera a coleção obtida através da ação selectCollection.
  • pipeline: Object[] - array de estágios do pipeline de agregação MongoDB.

Parâmetros opcionais

  • session: Retorno da ação startTransaction - sessão de transação obtida através da ação startTransaction.

Retorno

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.aggregation: AggregationCursor - cursor com os resultados da agregação.

startTransaction

Método responsável por iniciar uma transação em uma conexão MongoDB.

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

Parâmetros obrigatórios

  • connection: Retorno da ação de conexão - espera a conexão obtida através da ação connection.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

A constante ou variável criada, como a session do exemplo mostrado anteriormente, receberá um objeto do tipo ClientSession que pode ser passado como parâmetro session nas ações de CRUD.

commitTransaction

Método responsável por confirmar (commit) uma transação iniciada em uma conexão MongoDB.

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

Parâmetros obrigatórios

  • session: Retorno da ação startTransaction - espera a sessão obtida através da ação startTransaction.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

Este método não possui retorno.

abortTransaction

Método responsável por desfazer (rollback) uma transação iniciada em uma conexão MongoDB.

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

Parâmetros obrigatórios

  • session: Retorno da ação startTransaction - espera a sessão obtida através da ação startTransaction.

Parâmetros opcionais

Este método não possui parâmetros opcionais.

Retorno

Este método não possui retorno.