Fundamentos de MongoDB

1

Uso de MongoDB: Consultas y Almacenamiento en NoSQL

2

Bases de Datos NoSQL: MongoDB y Tipos de Escalamiento

3

Documentos y colecciones en bases de datos documentales

4

Creación y gestión de bases de datos NoSQL con MongoDB y Atlas

5

Uso de Mongo Compass para Conectar y Consultar Bases de Datos

6

Consultas de MongoDB en Visual Studio Code con MongoDB for VS Code

7

Instalación de Docker en Windows, macOS y Ubuntu

8

Correr MongoDB en Docker: Configuración y Ejecución Local

9

Conexión a MongoDB usando Mongo SH y Docker

10

Diferencias entre JSON y BSON en MongoDB

CRUD

11

Operaciones CRUD e inserción de documentos en MongoDB

12

Operaciones CRUD en MongoDB: Insertar Documentos en Mongo Atlas

13

Actualización de Documentos en MongoDB con Operadores Básicos

14

Actualización en Masa de Documentos en MongoDB con UpdateMany

15

Actualización y manejo de arrays en MongoDB

16

Gestión de datos de sensores IoT en MongoDB: Insert y Update eficientes

17

Eliminar documentos en MongoDB: métodos y prácticas

Operadores

18

Consultas con Operadores de Comparación en MongoDB

19

Operadores de Comparación en MongoDB: Mayor, Menor e Igualdad

20

Operadores avanzados en MongoDB: consultas y actualizaciones eficientes

21

Búsquedas Avanzadas con Expresiones Regulares en MongoDB

22

Selección de Campos en Consultas MongoDB con Projections

23

Consultas Avanzadas en Arrays con MongoDB

24

Operadores Lógicos en MongoDB: Uso de AND, OR y NOR

25

Consultas avanzadas con el operador expresivo en MongoDB

26

Consultas Avanzadas en Arrays y Subdocumentos en MongoDB

Herramientas comunes al trabajar con MongoDB

27

Análisis de Datos con MongoDB Aggregation Framework

28

Ordenar y Limitar Consultas en MongoDB para Paginación

29

Características y usos avanzados de Mongo Atlas

30

MongoDB: Dominio de CRUD y Consultas Avanzadas

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Operaciones CRUD e inserción de documentos en MongoDB

11/30
Recursos

¿Cómo se realiza una operación CRUD en MongoDB?

Entender las operaciones CRUD (Crear, Leer, Actualizar, Eliminar) es esencial al trabajar con bases de datos, y MongoDB no es la excepción. En esta guía exploramos cómo llevar a cabo estas acciones en MongoDB usando Playgrounds y conexiones a Mongo Atlas, lo que te permite administrar tus datos de manera eficiente y profesional.

¿Cómo insertamos un documento en MongoDB?

Insertar documentos en MongoDB es un proceso sencillo debido a la flexibilidad de esta base de datos. MongoDB no requiere la creación explícita de bases de datos o colecciones. Simplemente indicando su uso, MongoDB las crea automáticamente si no existen.

db.products.insertOne({ 
  name: "product1", 
  price: 1000 
});

En este ejemplo, creamos un documento en la colección products. MongoDB automáticamente genera una base de datos si aún no está creada, demostrando su capacidad de crear sobre la marcha, facilitando la manipulación de datos.

¿Cómo realizar consultas en documentos insertados?

Una vez que los documentos están insertados, puedes consultarlos para verificar el contenido almacenado. Esto se realiza utilizando el método .find().

db.products.find();

La consulta devuelve todos los documentos de la colección products. De este modo, puedes verificar los documentos insertados, permitiéndote asegurar la integridad y consistencia de tus datos.

¿Qué ocurre con los IDs de los documentos en MongoDB?

MongoDB asigna automáticamente un ObjectId a cada documento. Este es un identificador único subrayado bajo el campo _id, asegurando que cada documento pueda identificarse correctamente sin colisiones.

Ejemplo de IDs generados automáticamente:

{
  "_id": ObjectId("507f1f77bcf86cd799439011"),
  "name": "product1",
  "price": 1000
}

Generar tus propios IDs es posible, pero debes asegurarte de su unicidad para evitar errores de clave duplicada.

db.products.insertOne({ 
  _id: 1, 
  name: "product2", 
  price: 100 
});

Si intentas insertar duplicados de un ID que ya existe, MongoDB generará un error, evitando la duplicación dentro de la base de datos.

¿Cómo prevenir colisiones de ID?

Para quienes eligen definir sus propios IDs, deben considerar la gestión personalizada de la unicidad de los IDs. Esto es importante para evitar errores al insertar documentos adicionales con el mismo ID.

  1. Implementa un sistema de generación de IDs único dentro de tu lógica de aplicación.
  2. Verifica duplicados antes de insertar nuevos documentos.

Estos métodos aseguran la integridad y coherencia de tus datos, permitiéndote tomar control del sistema según tus necesidades específicas.

Con estas herramientas y métodos, manipular bases de datos en MongoDB se convierte en una tarea organizada y eficiente. A medida que desarrollas habilidades en estas operaciones, dominarás la gestión de datos como un verdadero profesional. ¡Continúa explorando y optimizando tus operaciones CRUD en MongoDB para maximizar tu habilidad con las bases de datos!

Aportes 9

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Insertar documentos definiendo un id

db.products.insertOne({
    _id: 1,
    name: "Producto 1",
    price: 1000
})

Insertar sin definir el Id

db.products.insertOne({
    name: "Producto 2",
    price: 100
})

En el trabajo estoy comenzando a utilizar mongodb. No he tocado mucho backend pero estás clases me están ayudando mucho a visualizar cómo funciona

Voy de la mano de la documentación para profundizar

insert

db.collection.insertOne({
  name: "Product 1",
  price: 100
})

find

db.collection.find()
db.collection.find({ _id: ObjectId("NroId..") })

Mongo por defecto crea identificadores únicos en los documentos, pero también podemos asignarlos manualmente si así lo deseamos

db.collection.insertOne({
  _id: 1,  // id manual 
  name: "Product 2",
  price: 200
})

solo debemos tener en cuenta que Mongo, así como genera identificadores únicos de manera automática, no nos permite que 2 o mas documentos tengan un mismo identificador, por lo cual si se asignan identificadores de manera manual, igualmente debemos estar pendientes a que estos no se repitan o tendremos un error de colisión
.
esto no es muy recomendable a mi parecer, es mejor dejar ese trabajo a Mongo y esta manera tendremos la garantía de que el id siempre será único.

Como me está gustando este curso ![](https://static.platzi.com/media/user_upload/image-66f31834-5e7f-4284-86cc-54c4d1805999.jpg)

Otras de las formas en las cuales podemos conectarnos a MongoDB es usando la PowerShell de Windows. por ejemplo en mi caso estoy virtualizando un Ubuntu Server 20.04 desde VirtualBox y estoy usando una conexión vía ssh para poder conectarme a MongoDB utilizando el comando mongosh.

se puede configurar mongodb para que no cree una base de datos cuando se usa el comando "USE" de igual manera con la coleccion? esto es por si llega a ver un typo y crea una base de datos con el typo
\## Insertar documentos como hacerlo ? Para poder realizar consultas mongo de tipo insert solo necesitaremos estar previamente conectados a la base de datos en este caso (Mongo Atlas) y podemos empezar a insertar nuestros documentos! :) ```js // Cuando ponemos en "use" un nombre //el cual no exite en nuestra //base de datos automaticamente mongo //creara una nueva base de datos //dandole el nombre que //ingresamos en este caso "plazi_store" use("plazi_store") //Algo similar sucede aca, al //poner db.products creamos //la coleccion products y //podemos insertarle nuestra informacion db.products.insertOne({   name:"juanito perez",   objetivo: "Conquistar y dominar",   skills: "Seductor experto" }) ```
Aquí les dejo un ejemplo para insertar muchos productos, con ayuda de la sentencia ***insertMany()***, que recibe un arreglo con los productos a insertar: ```js use("platzi_store") db.products.insertMany([ { name: "Doritos", price: 16 }, { name: "Papas", price: 17 }, { name: "Paketaxo", price: 17 }, { name: "Cheetos", price: 15 }, { name: "Churrumaiz", price: 14 } ]) db.products.find() ```
db.coleccionName.insertOne({
	propiedad: valor,
	propiedad_n: valor_n,
	_id: id #este dato se genera en automatico por mongo y no es necesario colocarlo, aunque puedes manejarlo por tu cuenta
})