sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Cuál es la diferencia entre guardar e insertar en Mongo DB?

Guardar Vs Insertar:

En sus ejemplos dados, el comportamiento es esencialmente el mismo.

save se comporta de manera diferente si se pasa con un parámetro "_id".

Para guardar, si el documento contiene _id , alterará la consulta de la colección en el _id campo, si no, se insertará.

Si un documento no existe con el valor _id especificado, el método save() realiza una inserción con los campos especificados en el documento.

Si existe un documento con el valor _id especificado, el método save() realiza una actualización, reemplazando todos los campos del registro existente con los campos del documento.

Guardar vs Actualizar :

update modifica un documento existente que coincide con sus parámetros de consulta. Si no existe tal documento coincidente, es entonces cuando upsert viene en la imagen.

  • upsert : false :No pasa nada cuando no existe tal documento
  • upsert : true :Se crea un nuevo documento con contenidos iguales a los parámetros de consulta y parámetros de actualización

save :No permite ningún parámetro de consulta. si _id existe y hay un documento coincidente con el mismo _id , lo reemplaza. Cuando no se especifica _id/no hay documento coincidente, inserta el documento como uno nuevo.