8.7. Insertar documentos en MongoDB: Insertar documentos simples en MongoDB
Página 15 | Escuchar en audio
Al trabajar con MongoDB, una de las operaciones más fundamentales que debe comprender es cómo insertar documentos en la base de datos. Insertar documentos equivale a agregar registros a una base de datos relacional. En MongoDB, los documentos representan un registro de datos. En este capítulo, cubriremos cómo insertar documentos simples en MongoDB.
En primer lugar, es importante comprender que MongoDB es una base de datos orientada a documentos. Esto significa que en lugar de almacenar sus datos en tablas como se haría en una base de datos relacional, MongoDB almacena datos en estructuras de tipo BSON (una representación binaria de JSON con tipos de datos adicionales). Cada documento tiene un conjunto de pares campo-valor. Los campos pueden contener otros documentos, matrices y matrices de documentos.
La operación de inserción se realiza utilizando el método insert()
o insertOne()
y insertMany()
en MongoDB. El método insert()
era el método principal de inserción de documentos en MongoDB antes de la versión 3.2. A partir de la versión 3.2, se introdujeron insertOne()
e insertMany()
para insertar un solo documento y varios documentos respectivamente.
Para insertar un documento simple en MongoDB, primero deberá seleccionar la colección en la que desea insertar el documento. Una colección en MongoDB es un grupo de documentos y equivale a una tabla en una base de datos relacional. Si la colección no existe, MongoDB la creará por usted.
Supongamos que desea insertar el siguiente documento en una colección llamada 'estudiantes':
{ "nombre": "John Doe", "edad": 22, "materias": ["Matemáticas", "Ciencias", "Inglés"] }
Puedes hacer esto usando el método insertOne()
de la siguiente manera:
db.estudiantes.insertOne({ "nombre": "John Doe", "edad": 22, "materias": ["Matemáticas", "Ciencias", "Inglés"] });
El método insertOne()
inserta un nuevo documento en la colección especificada. El documento a insertar se pasa como argumento al método insertOne()
.
Después de insertar el documento, MongoDB devuelve un documento resultante que contiene el ID del documento insertado. El ID del documento es un campo especial llamado '_id' que MongoDB agrega automáticamente si no proporciona uno. El campo '_id' debe ser único dentro de la colección.
Si desea insertar varios documentos a la vez, puede utilizar el método insertMany()
. El método insertMany()
acepta una serie de documentos para insertar. Aquí tienes un ejemplo:
db.estudiantes.insertMany([ { "nombre": "Jane Doe", "edad": 20, "materias": ["Historia", "Matemáticas", "Inglés"] }, { "nombre": "Bob Smith", "edad": 22, "materias": ["Biología", "Ciencia", "Física"] } ]);
Al igual que el método insertOne()
, el método insertMany()
también devuelve un documento de resultado que contiene los ID de los documentos insertados.
Es importante tener en cuenta que si se produce un error al insertar documentos usando el método insertMany()
, MongoDB cancelará la operación y no se insertará ninguno de los documentos restantes en la matriz. Si desea que MongoDB inserte tantos documentos como sea posible independientemente de los errores, puede pasar un objeto de opciones con la propiedad 'ordenada' establecida en falso. Esto hará que MongoDB inserte documentos en el orden en que aparecen en la matriz, pero no detendrá la operación si ocurre un error.
En resumen, insertar documentos en MongoDB es una operación simple pero fundamental que debes comprender para trabajar eficazmente con esta base de datos. Ya sea que inserte un solo documento con insertOne()
o varios documentos con insertMany()
, el proceso es sencillo y flexible, lo que le permite estructurar sus datos de cualquier forma que facilite la más sentido para sus necesidades específicas.
Ahora responde el ejercicio sobre el contenido:
¿Cuál de los siguientes métodos se utiliza para insertar un solo documento en MongoDB?
¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.
¡Tú error! Inténtalo de nuevo.
Siguiente página del libro electrónico gratuito: