Was ist der Unterschied zwischen replaceOne () und updateOne () in MongoDB?
MongoDB
bulk-Operationen haben zwei Optionen:
Masse.finden.updateOne()
Fügt ein einzelnes Dokument update-Vorgang zu einer bulk-Operationen-Liste. Die operation kann entweder ersetzen Sie ein vorhandenes Dokument oder aktualisieren Sie bestimmte Felder in einem bestehenden Dokument.
Masse.finden.replaceOne()
Fügt einem einzelnen Dokument-Ersatz-operation, um eine bulk-Operationen-Liste. Verwenden Sie den Bulk.die find () - Methode zur Angabe der Bedingung, die bestimmt, welches Dokument zu ersetzen. Der Hauptteil.finden.replaceOne () - Methode beschränkt die Ersatz zu einem einzigen Dokument.
Laut der Dokumentation, die diese beiden Methoden ersetzen kann ein passendes Dokument. Verstehe ich richtig, dass updateOne()
ist mehr general purpose-Methode, können Sie entweder ersetzen das Dokument genau wie replaceOne()
hat, oder einfach nur die Aktualisierung seiner spezifischen Bereichen?
InformationsquelleAutor der Frage Mike B. | 2016-03-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit
replaceOne()
Sie können nur ersetzen Sie das gesamte Dokument, jedochupdateOne()
ermöglicht das aktualisieren von Feldern, die Sie festgestellt haben, in Frage stellen.Aber dies bedeutet auch, können Sie mit Hilfe von Update-Operatoren:
https://docs.mongodb.org/manual/reference/operator/update/
Und IIRC kann man das schema ändern mit
updateOne()
die kann man nicht mitreplaceOne()
InformationsquelleAutor der Antwort Hughzi