Cómo integrar el controlador MongoDB Node.js

Como Integrar El Controlador Mongodb Node Js



MongoDB tiene un paquete oficial llamado MongoDB Node.js Driver, que permite la integración entre programas y bases de datos de Node.js. Con esta aplicación podremos conectarnos, consultar, actualizar y eliminar documentos, entre otras acciones de la base de datos. Para utilizar el controlador MongoDB Node.js, necesitamos instalar el paquete mongodb desde npm, que es el Administrador de paquetes de Node. En este artículo, proporcionamos cada etapa para obtener mongodb de npm a continuación.

Configurar el controlador MongoDB usando el módulo npm

Para obtener el controlador MongoDB node.js, primero debemos obtener el módulo npm para Node.js en nuestro sistema, que debe actualizarse. Hemos instalado npm con la última versión globalmente en el sistema. El comando para la instalación del módulo npm se proporciona a continuación:

instalación npm -g npm@9.8.1

Aquí, es evidente que el módulo npm se ha agregado a la computadora.









Ahora, necesitamos integrar MongoDB con el controlador Node.js, por lo que el siguiente comando nos ayuda a obtener el controlador Mongodb mediante el comando npm. npm guarda las dependencias en un archivo llamado 'package.json' con la opción -save. Sin embargo, podemos instalar el controlador MongoDB y agregarlo a las dependencias del proyecto sin la opción –save para lograr el mismo resultado.



npm instala mongodb --guardar

El controlador MongoDB ahora se instaló correctamente, como se ve en la siguiente imagen.





El siguiente paso es crear un directorio único donde se pueda colocar el programa MongoDB. Para hacer esto, cree el directorio 'NewFolder' usando el comando mkdir. El comando para crear el directorio es el siguiente:



mkdir Nueva carpeta

Ahora, hemos especificado la ruta como se muestra a continuación para ingresar a ese directorio específico.

cd C:\Usuarios\Hp\MyNodejs\NuevaCarpeta

Así, ahora estamos en el directorio “NuevaCarpeta” que se creó en el paso anterior. Pasando al siguiente proceso, solicitamos el comando 'npm init -y' para inicializar rápidamente un nuevo proyecto Node.js generando un archivo package.json con valores predeterminados sin requerir ninguna intervención del usuario.

El archivo package.json básico con valores predeterminados se ha creado como resultado del comando siguiente.

Ejemplo #1: Establecer la conexión con el servidor MongoDB integrando Node.js

Todos los pasos iniciales para obtener el controlador MongoDB dentro de Node.js se completaron con éxito en la sección anterior. Ahora podemos establecer fácilmente una conexión con el servidor MongoDB. Para ello hemos creado un archivo dentro del directorio “NewFolder” con el nombre “MongoDB.js”. El script para establecer la conexión se proporciona a continuación.

constante {MongoCliente} = requerir ( 'mongodb' );
URL constante = 'mongodb:// 127.0.0.1:27017 ' ;
cliente constante = nuevo MongoClient(url);
const nombre_bd = 'Nueva base de datos' ;
función asíncrona principal() {
espere cliente.connect();
consola.log( 'Conectado exitosamente al servidor MongoDB' );
const db = client.db(db_name);
colección constante = db.colección ( 'usuarios' );
devolver 'hecho.' ;
}

principal()
.entonces(consola.log)
.catch(consola.error)
.finalmente(() => cliente.close());

Hemos agregado la clase 'MongoClient' del paquete MongoDB para generar la conexión al servidor MongoDB. Luego, especificamos las variables “url” y “db_name” donde se define la URL del servidor MongoDB, que en este caso es localhost, y especificamos el nombre de la base de datos MongoDB “NewDatabase”.

Después de eso, configuramos la función asíncrona y la llamamos main(). Dentro de esa función main(), hemos empleado la función connect() para establecer la conexión, y cuando la conexión se establezca correctamente, log() imprimirá el mensaje.

Tras configurar la conexión accedemos a la colección “usuarios”. Aquí, podemos realizar varias operaciones de base de datos dentro de la función principal. A continuación, se llama a la función principal utilizando main().then(console.log).catch(console.error) para manejar casos de éxito y error. Finalmente, cerramos la conexión MongoDB usando client.close() en el bloque .finally().

El resultado mostró que la conexión con el servidor MongoDB se había establecido exitosamente cuando ejecutamos el archivo con el comando de nodo.

Ejemplo # 2: Insertar documentos en la colección MongoDB usando Node.js

Nos hemos conectado al servidor MongoDB en la sección anterior. Una vez establecida la conexión, podemos insertar los documentos en la colección especificada en el programa anterior. La operación de insertar el documento en la colección “usuario” se agrega al mismo archivo, “MongoDB.js”.

constante {MongoCliente} = requerir ( 'mongodb' );
URL constante = 'mongodb:// 127.0.0.1:27017 ' ;
cliente constante = nuevo MongoClient(url);
const nombre_bd = 'Nueva base de datos' ;
función asíncrona principal() {
espere cliente.connect();
consola.log( 'Conectado exitosamente al servidor MongoDB' );
const db = client.db(db_name);
colección constante = db.colección ( 'usuarios' );

constante insertarDocs =
await collection.insertMany([{ nombre: 'Alex' , correo electrónico: ' correo a:alex@example.com 'objetivo=' _blanco 'rel=' sin abrir '>alex@ejemplo.com ' },
{ nombre: 'Andy' , correo electrónico: ' correo a:andy@ejemplo.com 'objetivo=' _blanco 'rel=' sin abrir '>andy@ejemplo.com '  },
{ nombre: 'Él mismo' , correo electrónico: ' correo a:sam@example.com 'objetivo=' _blanco 'rel=' sin abrir '>sam@ejemplo.com '  }]);
consola.log( 'Documentos insertados en Colección =>' , insertarDocumentos);
devolver 'hecho.' ;
}

principal()
.entonces(consola.log)
.catch(consola.error)
.finalmente(() => cliente.close());

Aquí, todo el guión es el mismo que el anterior; Acabamos de insertar la operación de inserción en la función asíncrona main(). Creamos la variable 'insertDocs' y luego llamamos a la función insertMany() usando el comando await. Para la función insertMany(), hemos especificado tres documentos que contienen campos 'nombre' y 'correo electrónico' con valores diferentes en cada uno. Se generará un extracto cuando todos los documentos se hayan insertado correctamente.

El resultado muestra que los documentos se insertaron correctamente en la colección con tres identificaciones únicas.

Ejemplo #3: Actualizar el documento en la Colección usando Node.js

De la misma forma, también podemos aplicar la operación de actualización de MongoDB en Node.js siguiendo el mismo archivo, “MongoDB.js”. La operación se agrega al archivo para la operación de actualización. Considere el programa para esta operación.

constante {MongoCliente} = requerir ( 'mongodb' );
URL constante = 'mongodb:// 127.0.0.1:27017 ' ;
cliente constante = nuevo MongoClient(url);
const nombre_bd = 'Nueva base de datos' ;
función asíncrona principal() {
espere cliente.connect();
consola.log( 'Conectado exitosamente al servidor MongoDB' );
const db = client.db(db_name);
colección constante = db.colección ( 'usuarios' );

const updateDoc = espera colección.updateOne({ nombre: 'andy' },
{ $establecer: { correo electrónico: ' correo a:andy12@ejemplo.com 'objetivo=' _blanco 'rel=' sin abrir '>andy12@ejemplo.com ' } });
consola.log( 'Documento Actualizado en la Colección=>' , actualizarDoc);
devolver 'hecho.' ;
}

principal()
.entonces(consola.log)
.catch(consola.error)
.finalmente(() => cliente.close());

Aquí, hemos llamado a la variable 'updateDocs' donde la operación de actualización se define con el operador $set. La definición del método updateOne() establece que solo es necesario actualizar un documento. En el método updateOne() de MongoDB, hemos proporcionado el campo de nombre con valor como primera declaración, y luego le hemos dado el operador $set a la segunda declaración, donde se proporciona el campo 'correo electrónico' para actualizar el nuevo correo electrónico en consecuencia. .

El resultado se muestra donde el documento que se va a actualizar coincide y se modifica mediante Node.js.

Ejemplo # 4: Eliminar documento de la colección MongoDB usando Node.js

A continuación, aplicamos la operación de eliminación de MongoDB usando Node.js. La operación se proporciona en el archivo similar 'MongoDB.js'.

constante {MongoCliente} = requerir ( 'mongodb' );
URL constante = 'mongodb:// 127.0.0.1:27017 ' ;
cliente constante = nuevo MongoClient(url);
const nombre_bd = 'Nueva base de datos' ;
función asíncrona principal() {
espere cliente.connect();
consola.log( 'Conectado exitosamente al servidor MongoDB' );
const db = client.db(db_name);
colección constante = db.colección ( 'usuarios' );

const eliminarDoc = esperar colección.deleteOne({ nombre: 'Andy' });
consola.log( 'Documento eliminado=>' , eliminarDoc);
devolver 'hecho.' ;
}

principal()
.entonces(consola.log)
.catch(consola.error)
.finalmente(() => cliente.close());

Aquí, hemos definido la nueva variable 'deleteDoc' donde el documento se elimina de la misma colección 'usuarios'. El método deleteOne() se proporciona dentro de la variable 'deleteDoc' para eliminar solo el documento específico, que es el que tiene el campo 'nombre' almacenado con el valor 'Andy'. Cuando el documento se elimina de la colección, el archivo Node.js también generará el mensaje de eliminación.

Como era de esperar, el documento se eliminó con éxito de la colección 'usuarios' de MongoDB.

Conclusión

Demostramos cómo establecer una conexión a una base de datos MongoDB y acceder a una colección utilizando el controlador MongoDB Node.js. Después de conectarnos exitosamente con MongoDB, hemos incluido código de operación adicional dentro de la función principal para realizar operaciones de MongoDB.