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 istniejeupsert : 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.