MongoDB Truncate-Sammlung
Eine Sammlung
ist nichts anderes als ein Ordner mit allen Dokumenten. Es gibt eine Obergrenze für die Anzahl der Datensätze, die Sie zu Sammlungen hinzufügen können, wenn Sie begrenzte Sammlungen verwenden.
Ein Dokument darf maximal 16MB
gross sein. Gelegentlich möchten Sie eine neue Sammlung
aufbauen und Dokumente aus der aktuellen entfernen.
Sie können eine der beiden Möglichkeiten auswählen, um die Sammlung
unten basierend auf Ihren Anforderungen zu kürzen. Im heutigen Artikel lernen wir, wie man eine Sammlung
in MongoDB abschneidet.
Kürzen Sie eine Sammlung
in MongoDB
Je nach Projektanforderungen können wir entweder drop()
oder remove()
verwenden. Wir können drop()
verwenden, wenn wir alle Daten und Indizes einer Sammlung
löschen wollen, während remove()
übereinstimmende Dokumente löscht und Indizes erhält (aktualisiert).
Beginnen wir mit der unten stehenden drop()
-Methode.
Verwenden Sie die drop()
-Methode
In MongoDB können Sie mit der Methode drop()
eine Sammlung
aus einer Datenbank entfernen. Eine Sammlung
wird aus der Datenbank gelöscht, und alle Indexe, die mit den abgelegten Sammlungen verknüpft sind, werden ebenfalls gelöscht.
Die Methode db.collection.drop()
wirft einen Fehler, wenn sie mit einem Argument verwendet wird, und akzeptiert keine Argumente. Wenn der Drop-Befehl eine Sammlung
erfolgreich löscht, gibt er true
zurück.
Wenn es keine zu löschende Sammlung
gibt, wird false
zurückgegeben. Weitere Informationen zur Methode drop()
finden Sie hier.
Syntax:
> db.collectionName.drop()
Lassen Sie uns das folgende Beispiel verwenden, um die erwähnte Idee zu verstehen:
> db.users.drop()
Wir löschen alle Benutzer
-Sammlungen im vorherigen Beispiel, wodurch auch alle zugehörigen Indizes automatisch entfernt werden. Führen Sie die obige Codezeile in MongoShell
aus, das mit MongoDB kompatibel ist.
Es wird das folgende Ergebnis angezeigt:
true
Verwenden Sie die remove()
-Methode
In MongoDB können Sie mit der Methode remove()
eine Sammlung
aus einer Datenbank entfernen.
Diese Methode wäre jedoch in einem Replikatsatz-Szenario erheblich langsamer
, da das oplog
Einträge für jedes entfernte Dokument anstelle eines einzelnen collection
-Drop-Befehls enthalten würde.
Die Methode remove()
ist mit gedeckelten
Sammlungen nicht kompatibel. Die Methode remove()
gilt nicht für die Sammlung einer Zeitreihe. Wählen Sie je nach Bedarf einen effektiven Ansatz.
Wenn remove()
eine collection
erfolgreich löscht, gibt es ein WriteResult
-Objekt zurück, das den Status der Operation enthält. Weitere Informationen zu remove()
finden Sie hier.
Syntax:
> db.collectionName.remove({})
Lassen Sie uns das folgende Beispiel verwenden, um die erwähnte Idee zu verstehen:
> db.users.remove({})
Im obigen Beispiel werden die vollständigen Sammlungsdaten Benutzer
gelöscht, aber diese Methode entfernt nicht die mit der Sammlung verknüpften Indizes. Führen Sie die obige Codezeile in MongoShell
aus, das mit MongoDB kompatibel ist. Es wird das folgende Ergebnis angezeigt:
WriteResult({ "nRemoved" : 3300 })
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn