Introducción
¡Bienvenido a LabEx! Este es su primer laboratorio de MongoDB. No se preocupe si nunca ha utilizado una base de datos: le guiaremos en cada paso.
Primero, veamos qué es MongoDB: MongoDB es un sistema de bases de datos que almacena los datos en un formato flexible basado en documentos. A diferencia de las hojas de cálculo tradicionales, MongoDB permite organizar los datos de una forma más natural, similar a cómo organizaría los archivos en carpetas de su equipo.
En este laboratorio aprenderá a:
- Iniciar el shell de MongoDB y entender qué es
- Crear su primera base de datos y colección
- Añadir y consultar datos en MongoDB
- Consultar, actualizar y eliminar datos
Estas habilidades constituirán la base de su aprendizaje de MongoDB. ¡Comencemos!
Haga clic en el botón Continue que aparece abajo para iniciar el laboratorio.
Iniciar el shell de MongoDB
En este paso abrirá un terminal e iniciará el shell de MongoDB en su máquina virtual de LabEx.
Recomendamos la Terminal Interface por su rapidez y facilidad de uso. Esta es la interfaz predeterminada para los laboratorios relacionados con MongoDB.

Si prefiere una experiencia de terminal más tradicional, utilice la Desktop Interface. Mire el lado izquierdo de su escritorio y haga clic en el icono llamado Xfce Terminal.

Ambos métodos funcionan igual de bien; solo son formas diferentes de acceder al mismo entorno del laboratorio. ¡Elija el que prefiera!
Ahora iniciaremos el shell de MongoDB, que funciona como un panel de control para nuestra base de datos. Piense en el shell como una forma de comunicarse directamente con MongoDB: usted escribe comandos y MongoDB responde.
Para iniciar el shell de MongoDB, escriba el siguiente comando en el terminal y pulse Enter:
mongosh
Verá un mensaje de conexión que indica que se ha conectado correctamente a la instancia local de MongoDB. El resultado será similar a este:
Current Mongosh Log ID: 65a7f3e5f1a1234567890abc
Connecting to: mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+x.y.z
Using MongoDB: X.X.X
Using Mongosh: X.X.X
For mongosh info, see: https://docs.mongodb.com/mongodb-shell/
test>
El prompt test> indica que ahora está dentro del shell mongosh y conectado a la base de datos predeterminada test.
Veamos una lista de todas las bases de datos existentes en el servidor. Escriba el siguiente comando en el shell mongosh:
show dbs
Verá una lista de las bases de datos predeterminadas que MongoDB utiliza internamente:
admin 40.00 KiB
config 112.00 KiB
local 40.00 KiB
En el siguiente paso creará su propia base de datos.
Crear una base de datos e insertar un documento
En este paso creará una base de datos e insertará su primer documento. En MongoDB no es necesario crear explícitamente una base de datos. Esta se crea automáticamente cuando almacena datos en ella por primera vez. Para cambiar a una base de datos nueva, utilice el comando use.
Cambiemos a una base de datos llamada mylab_database. En el shell mongosh, escriba:
use mylab_database
El shell responderá switched to db mylab_database. Aunque la base de datos todavía no se ha creado, ahora está trabajando en su contexto.
MongoDB almacena los datos en colecciones, que son grupos de documentos. Un documento es un conjunto de pares clave-valor. Creemos una colección users insertando nuestro primer documento.
Utilice el método insertOne() para añadir un único documento a la colección users:
db.users.insertOne({ name: "JohnDoe", age: 30, city: "NewYork" })
Desglosemos este comando:
db: representa la base de datos actual (mylab_database).users: es el nombre de la colección. Se creará automáticamente.insertOne(): es el método para insertar un documento.{...}: es el documento en sí, que contiene campos comoname,ageycity.
MongoDB confirmará la inserción y devolverá el _id único que generó para el documento:
{
acknowledged: true,
insertedId: ObjectId("...")
}
ObjectId es un identificador único que se asigna automáticamente a cada documento.
Ahora verifiquemos que se ha añadido el documento. Utilice el método find() para consultar todos los documentos de la colección users:
db.users.find()
El resultado mostrará el documento que acaba de insertar:
[
{
_id: ObjectId("..."),
name: 'JohnDoe',
age: 30,
city: 'NewYork'
}
]
Insertar varios documentos
En este paso añadirá varios documentos a la vez. El método insertMany() recibe como argumento un arreglo de documentos.
Creemos una colección nueva llamada books y añadamos tres libros con un solo comando.
db.books.insertMany([
{ title: "MongoDBBasics", author: "JaneSmith", year: 2023 },
{ title: "PythonProgramming", author: "JohnDoe", year: 2022 },
{ title: "DataScienceHandbook", author: "AliceJohnson", year: 2021 }
])
Observe los corchetes [ ], que definen un arreglo. Cada objeto {...} dentro del arreglo es un documento independiente.
MongoDB confirmará la operación y devolverá los valores de _id de todos los documentos insertados:
{
acknowledged: true,
insertedIds: {
'0': ObjectId("..."),
'1': ObjectId("..."),
'2': ObjectId("...")
}
}
Para consultar todos los documentos de la nueva colección books, utilice de nuevo el método find():
db.books.find()
El resultado mostrará los tres documentos de libros que acaba de añadir.
Consultar y contar documentos
En este paso recuperará y contará los datos que ha insertado.
Para contar el número total de documentos de una colección, utilice el método countDocuments(). Contemos los libros de la colección books:
db.books.countDocuments()
El comando devolverá el total:
3
Para buscar documentos específicos, pase un filtro de consulta al método find(). Un filtro de consulta es un documento que especifica las condiciones de búsqueda.
Por ejemplo, para buscar todos los libros escritos por "JohnDoe", utilice la siguiente consulta:
db.books.find({ author: "JohnDoe" })
El filtro { author: "JohnDoe" } indica a MongoDB que devuelva únicamente los documentos cuyo campo author tenga el valor "JohnDoe".
También puede consultar según valores numéricos. Busquemos todos los libros publicados en 2023:
db.books.find({ year: 2023 })
Esto devolverá el libro "MongoDBBasics". El método find() es una herramienta potente para recuperar exactamente los datos que necesita.
Actualizar y eliminar documentos
En este paso actualizará y eliminará documentos de una colección.
Para cambiar un documento existente, utilice el método updateOne(). Este método recibe un filtro que selecciona el documento y un documento de actualización que describe el cambio. El operador $set cambia únicamente el campo especificado.
Actualicemos el año de publicación del libro "PythonProgramming" de 2022 a 2024:
db.books.updateOne(
{ title: "PythonProgramming" },
{ $set: { year: 2024 } }
)
MongoDB confirmará que ha encontrado y modificado un documento:
{
acknowledged: true,
insertedId: null,
matchedCount: 1,
modifiedCount: 1,
upsertedCount: 0
}
Compruebe el documento actualizado:
db.books.find({ title: "PythonProgramming" })
Ahora el resultado mostrará year: 2024 para el libro "PythonProgramming".
A continuación, elimine documentos de la colección.
Para eliminar un único documento que coincida con una condición específica, utilice el método deleteOne(). Eliminemos el libro titulado "MongoDBBasics":
db.books.deleteOne({ title: "MongoDBBasics" })
El shell confirmará que se ha eliminado un documento:
{ acknowledged: true, deletedCount: 1 }
Para eliminar varios documentos que coincidan con una condición, utilice deleteMany(). Este método admite operadores de consulta para crear condiciones más complejas. Por ejemplo, $lt significa "menor que".
Eliminemos todos los libros publicados antes de 2022:
db.books.deleteMany({ year: { $lt: 2022 } })
Este comando elimina todos los documentos cuyo campo year sea menor que 2022. En nuestro caso, eliminará "DataScienceHandbook".
Para ver qué libros quedan, ejecute el comando find() una última vez:
db.books.find()
Solo debería quedar el libro "PythonProgramming" en la colección.
Ahora ha practicado las operaciones CRUD básicas de MongoDB (Create, Read, Update, Delete: crear, leer, actualizar y eliminar). Para salir del shell mongosh, escriba:
exit
Resumen
¡Felicidades por completar su primer laboratorio de MongoDB! Ha aprendido y practicado correctamente las operaciones fundamentales para administrar datos en una base de datos MongoDB.
En este laboratorio ha aprendido a:
- Iniciar el shell
mongoshpara interactuar con un servidor MongoDB. - Utilizar el comando
usepara cambiar de base de datos. - Insertar documentos individuales y múltiples mediante
insertOne()einsertMany(). - Recuperar documentos mediante
find(), con filtros de consulta o sin ellos. - Contar documentos de una colección con
countDocuments(). - Actualizar un documento mediante
updateOne()y el operador$set. - Eliminar documentos mediante
deleteOne()ydeleteMany().
Estas habilidades fundamentales son la base para desarrollar aplicaciones potentes con MongoDB. La práctica es esencial, así que puede seguir experimentando con los comandos que ha aprendido.

