MongoDB brinda a sus usuarios la capacidad de crear bases de datos modernas a las que se puede acceder y manipular fácilmente.

MongoDB es una base de datos de código abierto NoSQL que está disponible para su uso en todos los sistemas operativos.

Si aprendió a diseñar bases de datos en la escuela, es probable que no haya aprendido a usar MongoDB ni haya adquirido mucha experiencia con bases de datos NoSQL. Esto no es ninguna sorpresa: hasta 1998, muchas personas ni siquiera habían oído hablar de NoSQL, y no fue hasta 2009 que las bases de datos NoSQL comenzaron a ganar terreno.

¿Qué es NoSQL?

El acrónimo SQL significa "lenguaje de consulta estructurado". SQL se utiliza para realizar operaciones matemáticas en datos almacenados en bases de datos estructuradas rígidamente por filas y columnas (tablas).

El acrónimo NoSQL, dependiendo de a quién le pregunte, significa "no solo SQL" o "no SQL". Sin embargo, el único hecho de que todos puede estar de acuerdo es que NoSQL se utiliza para realizar operaciones en datos que se mantienen en bases de datos no estructuradas por filas y columnas.

instagram viewer

Existen algunas bases de datos NoSQL, pero el nombre que sobresale del resto es MongoDB. De hecho, algunas personas piensan que MongoDB es la única base de datos de este tipo.

¿Qué es MongoDB?

NoSQL admite cuatro tipos diferentes de bases de datos: documentos, almacenes de valores clave, orientados a columnas y gráficos. MongoDB es una base de datos de documentos porque almacena datos en un documento similar a JSON y, como todas las bases de datos, admite todas las operaciones CRUD esenciales.

Relacionados: Cómo una base de datos MongoDB puede organizar mejor sus datos

¿Qué son las operaciones CRUD?

El acrónimo CRUD significa "crear, leer, actualizar y eliminar". CRUD representa los cuatro requisitos funcionales básicos de todas las bases de datos. Si está utilizando una base de datos que no le permite crear, leer, actualizar o eliminar registros, entonces no es una base de datos.

Descarga MongoDB

Antes de que pueda realizar cualquier operación CRUD en MongoDB, deberá descargar e instalar MongoDB en su dispositivo (o use una versión disponible en la nube), ejecute el servidor MongoDB, conéctese a él y finalmente cree un nuevo base de datos.

El servidor MongoDB se puede descargar desde el sitio oficial. Sitio web de MongoDB.

Ejecutando el servidor MongoDB

Ejecute MongoDB Server desde la consola de su IDE.


/Users/Administrator/mongodb/bin/mongod.exe --dbpath = / Users / Administrator / mongodb-data

El código anterior ejecuta el servidor MongoDB. La primera mitad proporciona la ruta directa al archivo ejecutable de MongoDB (mongod.exe) que está almacenado en su dispositivo. El nombre de la ruta en su dispositivo debe ser diferente, pero el objetivo es llegar al archivo mongod.exe en la carpeta bin.

La segunda mitad del código (que está separada por la barra espaciadora) es otro nombre de ruta. Esta ruta conduce a "mongodb-data", que es un archivo que deberá crear usted mismo. Este archivo contendrá todos los datos que se crean en nuestra base de datos.

Nuestro archivo se llama "mongodb-data", pero el nombre puede ser el que crea que es adecuado.

La ejecución del código anterior debería producir varias líneas de código, pero las dos líneas a las que debe prestar mucha atención se pueden ver a continuación:


{"t": {"$ date": "2021-04-14T18: 10: 11.779-05: 00"}, "s": "I", "c": "RED", "id": 23015, "ctx": "escucha", "msg": "Escuchando", "attr": {"dirección": "127.0.0.1"}}
{"t": {"$ date": "2021-04-14T18: 10: 11.797-05: 00"}, "s": "I", "c": "RED", "id": 23016, "ctx": "listener", "msg": "Esperando conexiones", "attr": {"port": 27017, "ssl": "off"}}

Estas dos líneas contienen el localhost y el puerto predeterminado del servidor MongoDB, respectivamente. Estos dos números son necesarios para luego crear una conexión al servidor MongoDB para que podamos realizar nuestras operaciones CRUD.

Realización de operaciones CRUD

Ahora que nuestro servidor MongoDB está en funcionamiento, podemos conectarnos a él (usando el controlador apropiado) y comenzar a realizar operaciones CRUD. Para este artículo, crearemos una base de datos de usuarios simple que almacenará los nombres y edades de nuestros usuarios.

Crear un usuario

Hay dos formas principales de insertar usuarios en una base de datos MongoDB. Ambos métodos son bastante similares, pero el método que debe elegir depende de la cantidad de usuarios que desee crear en una instancia específica. Si su objetivo es crear un usuario, debe utilizar la insertOne método.

Sin embargo, si el objetivo es crear más de un usuario a la vez, entonces el insertMany El método es una mejor opción.

Ejemplo del método insertOne de MongoDB


// importar mongodb y usar desestructuración para obtener la función MongoClient
const {MongoClient} = require ("mongodb");
// la URL de conexión y la base de datos a la que pretendemos conectarnos
const connectionURL = 'mongodb: //127.0.0.1: 27017';
const databaseName = 'administrador de usuarios';
// usando la función de conexión en MongoClient para conectarse al servidor MongoDB
MongoClient.connect (connectionURL, {useUnifiedTopology: true}, (error, cliente) => {
// comprobar si se estableció la conexión
if (error) {
return console.log ('No se pudo conectar a la base de datos');
}
// acceder a la base de datos del administrador de usuarios
const db = client.db (nombre de la base de datos);
// inserta un usuario en la base de datos
db.collection ('usuarios'). insertOne ({
nombre: 'John Doe',
edad: '28'
}, (error, resultado) => {
if (error) {
return console.log ('No se pudo crear el usuario');
}
console.log (resultado.ops);
})
})

Antes de que podamos crear usuarios, se debe establecer una conexión con el servidor MongoDB utilizando el controlador MongoDB del idioma que está utilizando. El controlador más popular, y el que estamos usando en este tutorial, es el controlador NodeJS.

Con la primera línea de nuestro código anterior, podemos usar el método de desestructuración para recuperar la función MongoClient de nuestro servidor.

MongoClient acepta tres argumentos:

  • Una URL (utilizada para conectarse al servidor MongoDB)
  • Opciones / Configuración (que en este caso establece la variable "useUnifiedTopology" en verdadero, para facilitar el uso del nuevo motor de detección y supervisión del servidor)
  • Una función de devolución de llamada que toma dos argumentos (error y cliente)

Dentro de la función de devolución de llamada del método MongoClient, finalmente podemos insertar un usuario en nuestra base de datos. Pero antes de llegar a ese punto, necesitamos obtener acceso a la base de datos del administrador de usuarios.

Una de las ventajas de usar MongoDB es que no es necesario crear explícitamente una base de datos. Una vez que se genera una referencia a una base de datos en particular usando el argumento "cliente" (como se ve en el código anterior), puede comenzar a manipularla.

La referencia a la base de datos del administrador de usuarios que generamos se almacena en la variable "db", que usaremos para insertar nuestro primer usuario en la base de datos.

Usando la referencia "db", podemos crear una nueva colección, a la que asignamos el nombre "usuario".

La insertOne el método toma dos argumentos requeridos; el documento (el usuario) y una función de devolución de llamada. Con el insertOne método, podemos insertar un usuario con el nombre de Peter Davis con la edad de 32, en nuestra base de datos.

La función de devolución de llamada toma dos argumentos (error y resultado). La función de resultado contiene un método de operaciones que usamos para ver el usuario que acabamos de crear en nuestra base de datos. Esto produce la siguiente salida en la consola, después de que se ejecuta el código anterior:


[{nombre: 'Peter Davis', edad: '32', _id: 60772f869475e84740003c45}]

Aunque solo proporcionamos dos campos al crear un usuario, puede ver en el resultado anterior que se generó un tercer campo. Esta es otra cosa interesante de MongoDB; genera automáticamente una identificación única para cada documento que crea.

Relacionados: ¿En qué se diferencia el modelado de datos en MongoDB?

Leer un usuario en MongoDB

Los dos métodos principales utilizados para leer documentos de MongoDB son: encontrar y Encuentra uno. La encontrar El método se utiliza para leer varios documentos a la vez y el Encuentra uno El método se utiliza para leer un solo documento a la vez.

Ejemplo del método findOne de MongoDB


// importar mongodb y usar desestructuración para obtener el método MongoClient
const {MongoClient} = require ("mongodb");
// la URL de conexión y la base de datos a la que pretendemos conectarnos
const connectionURL = 'mongodb: //127.0.0.1: 27017';
const databaseName = 'administrador de usuarios';
// usando la función de conexión en MongoClient para conectarse al servidor MongoDB
MongoClient.connect (connectionURL, {useUnifiedTopology: true}, (error, cliente) => {
// comprobar si se estableció la conexión
if (error) {
return console.log ('No se pudo conectar a la base de datos');
}
// crea la base de datos del administrador de usuarios
const db = client.db (nombre de la base de datos);
// encontrar un usuario en la base de datos
db.collection ('usuarios'). findOne ({nombre: 'Peter Davis'}, (error, usuario) => {
if (error) {
return console.log ('No se pudo encontrar al usuario');
}
console.log (usuario);
})
});

Es bueno recordar que siempre deberá conectarse al servidor MongoDB y a la base de datos adecuada antes de poder realizar cualquier operación CRUD (como se ve en nuestro ejemplo anterior).

La Encuentra uno El método toma dos argumentos requeridos. El primer argumento contiene los criterios de búsqueda; puede buscar un documento utilizando cualquier nombre de variable que sea exclusivo de él. En nuestro ejemplo anterior usamos el nombre "Peter Davis".

El segundo argumento de la Encuentra uno El método es la función de devolución de llamada que toma dos argumentos; el primero es un error si no se puede localizar el documento, y el segundo es el documento (al que llamamos "usuario").

La ejecución del código anterior producirá el siguiente resultado en la consola:


{_id: 60772f869475e84740003c45, nombre: 'Peter Davis', edad: '32'}

Actualizar un usuario en MongoDB

Hay dos métodos disponibles para actualizar documentos en MongoDB. Aunque la estructura de ambos es muy similar, updateOne se utiliza para actualizar un documento a la vez y updateMany se utiliza para actualizar muchos documentos a la vez.

Ejemplo de método updateOne de MongoDB


// Actualizar la edad de un usuario
db.collection ('usuarios'). updateOne ({nombre: "Peter Davis"},
{
$ conjunto: {
edad: '24'
}
})

Con el código anterior podemos actualizar la edad de Peter Davis a 24.

Eliminar un usuario en MongoDB

Hay dos métodos disponibles para eliminar un documento de MongoDB. La deleteOne se utiliza para eliminar un solo documento, y el deleteMany El método se utiliza para eliminar varios documentos.

Ejemplo del método deleteOne de MongoDB


// eliminar un documento
db.collection ('usuarios'). deleteOne ({nombre: 'Peter Davis'})

La operación de eliminación es la operación CRUD más simple que se puede realizar en MongoDB. Como puede ver en el ejemplo anterior (sin incluir el código de conexión requerido y la función de devolución de llamada), solo se necesita una línea de código.

Ahora puede realizar operaciones CRUD en MongoDB

Ahora tiene conocimientos básicos de MongoDB y sabe lo que significa NoSQL. También sabe qué significa el acrónimo CRUD y por qué estas operaciones son cualidades esenciales de toda base de datos.

Este artículo le proporciona todas las herramientas necesarias para realizar las cuatro operaciones CRUD básicas en MongoDB. Ahora que está equipado con el conocimiento de las operaciones CRUD, puede comenzar a aprender la mejor manera de modelar sus datos utilizando MongoDB.

Crédito de la imagen: Alexander Sosluev /WiKiMedia Commons

Correo electrónico
¿En qué se diferencia el modelado de datos en MongoDB?

¿Está considerando un enfoque diferente para las bases de datos? Así es como funciona el modelado de datos en MongoDB.

Leer siguiente

Temas relacionados
  • Programación
  • Tutoriales de codificación
  • base de datos
Sobre el Autor
Kadeisha Kean (9 Artículos publicados)

Kadeisha Kean es desarrolladora de software Full-Stack y redactora técnica / tecnológica. Tiene la habilidad distintiva de simplificar algunos de los conceptos tecnológicos más complejos; produciendo material que puede ser fácilmente entendido por cualquier novato en tecnología. Le apasiona escribir, desarrollar software interesante y viajar por el mundo (a través de documentales).

Más de Kadeisha Kean

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Un paso más…!

Confirme su dirección de correo electrónico en el correo electrónico que le acabamos de enviar.

.