MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jaka jest różnica między zapisywaniem a wstawianiem w Mongo DB?

Zapisz vs. wstaw:

W podanych przykładach zachowanie jest zasadniczo takie samo.

save zachowuje się inaczej, jeśli jest przekazywany z parametrem „_id”.

Aby zapisać, jeśli dokument zawiera _id , spowoduje to odpytywanie kolekcji na _id pole, jeśli nie, zostanie wstawione.

Jeśli dokument nie istnieje z określoną wartością _id, metoda save() wykonuje wstawienie z określonymi polami w dokumencie.

Jeśli istnieje dokument z określoną wartością _id, metoda save() przeprowadza aktualizację, zastępując wszystkie pola w istniejącym rekordzie polami z dokumentu.

Zapisz a aktualizuj :

update modyfikuje istniejący dokument dopasowany do parametrów zapytania. Jeśli nie ma takiego pasującego dokumentu, wtedy upsert jest na zdjęciu.

  • upsert : false :Nic się nie dzieje, gdy taki dokument nie istnieje
  • upsert : true :Nowy dokument zostanie utworzony z zawartością równą parametrom zapytania i parametrom aktualizacji

save :Nie zezwala na żadne parametry zapytania. jeśli _id istnieje i istnieje pasujący dokument o tym samym _id , zastępuje go. Gdy nie określono _id/brak pasującego dokumentu, wstawia się dokument jako nowy.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB - Aktualizuj lub wstaw obiekt do tablicy

  2. Dokumentacja ClusterControl 1.5 — co nowego

  3. Znajdź zduplikowane rekordy w MongoDB

  4. MongoDb c# driver znajduje element w tablicy według wartości pola

  5. Jak odzyskać oryginalny dokument po agregacji?