Como desenvolver MongoDB com JavaScript

Como Desenvolver Mongodb Com Javascript



Uma das vantagens mais significativas do uso do MongoDB para desenvolvedores web é sua excelente integração com JavaScript. MongoDB fornece um driver JavaScript nativo que permite aos desenvolvedores interagir diretamente com o banco de dados usando o código JavaScript. Agora, é necessário instalar o driver MongoDB Node.js na máquina antes de começarmos a criar os aplicativos MongoDB em JavaScript. Precisamos usar o seguinte comando para isso:

npm eu mongodb

O driver nos permite interagir com o MongoDB a partir do seu código JavaScript e realizar diversas operações como conectar ao banco de dados, inserir os dados, consultar os dados e atualizar os dados.







Exemplo 1: Desenvolva uma conexão MongoDB com JavaScript

Comece estabelecendo a conexão com o servidor MongoDB com o JavaScript que pode ser feito usando o módulo “npm” conforme discutido anteriormente.



const { Cliente Mongo } = exigir ( 'mongodb' ) ;

const url = 'mongodb:// 127.0.0.1:27017 ' ;
const cliente = novo Cliente Mongo ( url ) ;
const nome do banco de dados = 'MeuDB' ;

assíncrono função principal ( ) {
aguardo cliente. conectar ( ) ;
console. registro ( 'Conectado ao servidor com sucesso' ) ;
const banco de dados = cliente. banco de dados ( nome do banco de dados ) ;
const coleção = banco de dados. coleção ( 'Pessoas' ) ;

retornar 'feito.' ;
}

principal ( )
. então ( console. registro )
. pegar ( console. erro )
. finalmente ( ( ) => cliente. fechar ( ) ) ;

Primeiro importamos o MongoClient necessário do módulo “mongodb” em nosso arquivo “File.js”. Em seguida, definimos o URL de conexão para o servidor MongoDB (url) e criamos uma nova instância MongoClient usando o URL especificado.



Depois disso, especificamos o nome do banco de dados MongoDB (dbName) a ser utilizado na conexão. A seguir, a função assíncrona main() trata das operações principais no servidor MongoDB. Aqui, nos conectamos ao servidor MongoDB usando await client.connect(). Esta é uma operação assíncrona, portanto a função é pausada até que a conexão seja estabelecida com êxito. Podemos visualizar a mensagem que aparece no prompt assim que a conexão for feita com sucesso. Obtemos uma referência ao banco de dados com o nome especificado em “dbName” usando client.db(dbName).





Então, obtemos uma referência à coleção chamada “Persons” usando db.collection(‘Persons’). Após definir a função main(), chamamos main() para executar as operações. Se a função main() for resolvida com sucesso, ela imprime o resultado (neste caso, é a string “concluído”) usando .then(console.log). Se houver um erro durante a execução, ele captura o erro e o imprime usando .catch(console.error). Por fim, garante que a conexão do cliente MongoDB seja fechada usando .finally(() => client.close()).

Portanto, o prompt mostra a mensagem onde a conexão MongoDB foi estabelecida no arquivo JavaScript:



Exemplo 2: Insira um documento MongoDB com JavaScript

Agora que a conexão com o servidor MongoDB foi estabelecida, podemos usar as consultas do MongoDB com JavaScript. Aqui, aplicamos a consulta insert para inserir o documento único.

const { Cliente Mongo } = exigir ( 'mongodb' ) ;

const url = 'mongodb:// 127.0.0.1:27017 ' ;
const cliente = novo Cliente Mongo ( url ) ;
const nome do banco de dados = 'MeuDB' ;

assíncrono função principal ( ) {
const banco de dados = cliente. banco de dados ( nome do banco de dados ) ;
const coleção = banco de dados. coleção ( 'Usuários' ) ;
const inserirDoc =
aguardar coleta. inserirUm ( { nome : 'André' , idade : 23 } ) ;
console. registro ( 'Documento inserido =' , inserirDoc ) ;
retornar 'feito.' ;
}

principal ( )
. então ( console. registro )
. pegar ( console. erro )
. finalmente ( ( ) => cliente. fechar ( ) ) ;

Definimos a função main() como uma função assíncrona que realiza a operação de inserção do banco de dados. Dentro dele, nos conectamos ao servidor MongoDB usando a instância MongoClient e a URL. Em seguida, acessamos o banco de dados especificado (MyDB) usando client.db(dbName) e obtemos a coleção “users” do banco de dados usando db.collection('users').

Depois disso, inserimos um documento com os campos nome “André” e idade 23 na coleção “usuários” usando o método collection.insertOne(). O método insertOne() retorna uma promessa que é resolvida com o resultado da inserção. O documento adicionado é mostrado usando console.log. Por último, fechamos a conexão do cliente MongoDB.

O documento inserido na coleção de banco de dados MongoDB foi inserido com êxito, conforme mostrado na saída a seguir:

Exemplo 3: Encontre um documento MongoDB com JavaScript

Da mesma forma, podemos aplicar a consulta “find” do MongoDB com JavaScript para encontrar o documento da coleção que foi criada no exemplo anterior.

const { Cliente Mongo } = exigir ( 'mongodb' ) ;

const url = 'mongodb:// 127.0.0.1:27017 ' ;
const cliente = novo Cliente Mongo ( url ) ;
const nome do banco de dados = 'MeuDB' ;

assíncrono função principal ( ) {
const banco de dados = cliente. banco de dados ( nome do banco de dados ) ;
const coleção = banco de dados. coleção ( 'Usuários' ) ;
const encontrarQuery = { nome : 'André' } ;
const encontrarDoc = aguardar coleta. encontrar ( encontrarQuery ) . paraArray ( ) ;
console. registro ( 'Documento =' , encontrarDoc ) ;
}

principal ( )
. então ( console. registro )
. pegar ( console. erro )
. finalmente ( ( ) => cliente. fechar ( ) ) ;

Começamos com a demonstração da função principal onde primeiro nos conectamos ao servidor MongoDB usando a instância MongoClient criada e a URL especificada. Em seguida, acessamos o banco de dados MyDB usando client.db(dbName) onde dbName é o nome do banco de dados definido anteriormente.

A seguir, obtemos uma referência à coleção “users” do banco de dados usando db.collection(‘users’). É criado um objeto de consulta denominado “findQuery” que especifica que os documentos a serem recuperados devem ter o campo nome igual a “Andrew”. Depois disso, realizamos uma consulta “find” na coleção “users” usando o collection.find(findQuery) que retorna um cursor para os documentos correspondentes.

A palavra-chave “await” é usada antes de collection.find() para garantir que o resultado seja resolvido antes de prosseguir. O resultado da operação find é convertido em um array de documentos usando toArray(), e os documentos encontrados são armazenados na variável “findDoc”. Os documentos são então registrados no console usando console.log.

Como resultado, o documento encontrado da coleção MongoDB é exibido durante a execução:

Exemplo 4: Atualizar um documento MongoDB com JavaScript

A seguir, realizamos a operação de “atualização” em JavaScript para atualizar o documento especificado da coleção MongoDB.

const { Cliente Mongo } = exigir ( 'mongodb' ) ;

const url = 'mongodb:// 127.0.0.1:27017 ' ;
const cliente = novo Cliente Mongo ( url ) ;
const nome do banco de dados = 'MeuDB' ;

assíncrono função principal ( ) {
const banco de dados = cliente. banco de dados ( nome do banco de dados ) ;
const coleção = banco de dados. coleção ( 'Usuários' ) ;
const atualizaçãoQuery = { nome : 'André' } ;
const atualizarNome = { $definir : { nome : 'Ele mesmo' } } ;
const atualizarResult = aguardar coleta. atualizarUm ( atualizaçãoQuery , atualizarNome ) ;
console. registro ( 'Documento atualizado =' , atualizarResult ) ;
retornar 'feito' ;
}

principal ( )
. então ( console. registro )
. pegar ( console. erro )
. finalmente ( ( ) => cliente. fechar ( ) ) ;

Para atualizar um documento na coleção “users”, invocamos a função main(). Preparamos então uma consulta de “atualização” usando { name: ‘Andrew’ } para encontrar o documento com o campo de nome igual a “Andrew”. Depois disso, definimos o campo de nome do documento correspondente como “Sam” usando { $set: {name: ‘Sam’ } }.

Definimos a consulta “update” e a operação “update” para realizar a atualização usando a coleção.updateOne(updateQuery, updateName). O método updateOne() atualiza o primeiro documento que corresponde à consulta “update” e retorna um objeto que representa o resultado da atualização. A variável “updateResult” contém o resultado da ação de atualização.

A tela de saída a seguir exibe os resultados da consulta atualizada:

Exemplo 5: Exclua um documento MongoDB com JavaScript

Finalmente, empregamos o método delete do MongoDB para excluir o documento anterior do MongoDB dentro do JavaScript.

const { Cliente Mongo } = exigir ( 'mongodb' ) ;

const url = 'mongodb:// 127.0.0.1:27017 ' ;
const cliente = novo Cliente Mongo ( url ) ;
const nome do banco de dados = 'MeuDB' ;

assíncrono função principal ( ) {
const banco de dados = cliente. banco de dados ( nome do banco de dados ) ;
const coleção = banco de dados. coleção ( 'Usuários' ) ;
const excluirQuery = { nome : 'Ele mesmo' } ;
const excluirResultado = aguardar coleta. excluirUm ( excluirQuery ) ;
console. registro ( 'Documento excluído =' , excluirResultado ) ;
retornar 'feito' ;
}

principal ( )
. então ( console. registro )
. pegar ( console. erro )
. finalmente ( ( ) => cliente. fechar ( ) ) ;

Criamos um objeto de consulta “delete” denominado “deleteQuery” que especifica os critérios para os documentos a serem excluídos. Neste caso, busca documentos cujo campo nome seja igual a “Sam”. Depois de preparar a consulta de exclusão, aplicamos a operação de exclusão real usando o método deleteOne() do objeto de coleção.

Passamos “deleteQuery” como argumento para “deleteOne”, que exclui o primeiro documento correspondente que atenda aos critérios especificados na consulta. A variável “deleteResult” contém o resultado da ação de exclusão.

O documento especificado é excluído da coleção MongoDB usando o arquivo “javascript”:

Conclusão

Agora temos um entendimento fundamental sobre como usar o MongoDB com JavaScript por meio do driver MongoDB Node.js. Demonstramos tudo isso com as diferentes operações do Mongo DB, desde a conexão até a exclusão do documento com JavaScript. A partir daqui, podemos construir aplicativos mais complexos e integrar o MongoDB aos projetos Node.js conforme necessário.