MongoDB Collection erstellen

MongoDBBeginner
Jetzt üben

Einführung

In diesem Lab lernen Sie die grundlegenden Schritte zur Arbeit mit MongoDB kennen. Sie verwenden die MongoDB Shell (mongosh), um eine Datenbank zu erstellen, eine Collection hinzuzufügen, Dokumente einzufügen und grundlegende Datenverwaltungsoperationen durchzuführen. Dieser praktische Ansatz vermittelt Ihnen praktische Erfahrung mit den Kernbefehlen von MongoDB und legt eine solide Grundlage für fortgeschrittenere Datenbankaufgaben.

Dies ist ein Guided Lab, das schrittweise Anweisungen bietet, um Ihnen beim Lernen und Üben zu helfen. Befolgen Sie die Anweisungen sorgfältig, um jeden Schritt abzuschließen und praktische Erfahrungen zu sammeln. Historische Daten zeigen, dass dies ein Labor der Stufe Anfänger mit einer Abschlussquote von 87% ist. Es hat eine positive Bewertungsrate von 99% von den Lernenden erhalten.

MongoDB Shell starten und Datenbank erstellen

Ihr erster Schritt ist die Verbindung zum MongoDB-Server über seine interaktive Shell, mongosh. Dieses Tool ermöglicht es Ihnen, Befehle direkt gegen Ihre Datenbankinstanz auszuführen.

Starten Sie die MongoDB Shell in Ihrem Terminal, indem Sie den Befehl mongosh ausführen.

mongosh

Sie sehen eine Verbindungsnachricht, die anzeigt, dass Sie sich nun in der mongosh-Umgebung befinden.

Current Mongosh Log ID: 65a7f3e8f5a8a9b3c4d5e6f7
Connecting to:           mongodb://127.0.0.1:27017/
Using MongoDB:           8.0.2
Using Mongosh:           2.2.6
...
test>

Die Eingabeaufforderung test> zeigt an, dass Sie derzeit mit der Standarddatenbank test verbunden sind. Wechseln wir zu einer neuen Datenbank für unser Projekt. In MongoDB können Sie zu einer Datenbank wechseln, die noch nicht existiert. Sie wird automatisch erstellt, wenn Sie dort zum ersten Mal Daten speichern.

Verwenden Sie den Befehl use, um zu einer neuen Datenbank namens my_store zu wechseln.

use my_store

Die Shell bestätigt den Wechsel.

switched to db my_store

Um zu überprüfen, welche Datenbank Sie gerade verwenden, können Sie db eingeben.

db;

Die Ausgabe zeigt den Namen der aktuellen Datenbank an.

my_store

Collection erstellen und Dokument einfügen

Nachdem Sie sich in der Datenbank my_store befinden, besteht der nächste Schritt darin, eine Collection zu erstellen. Eine Collection ist eine Gruppe von MongoDB-Dokumenten, ähnlich einer Tabelle in einer relationalen Datenbank.

Erstellen wir eine Collection namens products. Dies können Sie explizit mit der Methode createCollection() tun.

db.createCollection("products");

Eine erfolgreiche Operation gibt ein Objekt zurück, das den Erfolg anzeigt.

{ ok: 1 }

Sie können alle Collections in der aktuellen Datenbank auflisten, um zu überprüfen, ob products erstellt wurde.

show collections
products

Nachdem die Collection erstellt wurde, können Sie nun Ihr erstes Dokument einfügen. Ein Dokument ist ein BSON-Objekt, eine binär kodierte Serialisierung von JSON-ähnlichen Dokumenten.

Verwenden Sie die Methode insertOne(), um ein einzelnes Dokument zur Collection products hinzuzufügen.

db.products.insertOne({
  name: "Laptop",
  price: 1200,
  category: "Electronics"
});

MongoDB bestätigt die Einfügung und liefert die eindeutige _id des neuen Dokuments.

{
  acknowledged: true,
  insertedId: ObjectId("...")
}

Diese ObjectId wird für jedes Dokument automatisch generiert und dient als dessen Primärschlüssel.

Mehrere Dokumente einfügen

Oft müssen Sie mehrere Dokumente gleichzeitig zu einer Collection hinzufügen. MongoDB bietet hierfür die Methode insertMany(). Diese Methode ist effizienter als mehrmaliges Aufrufen von insertOne().

Fügen wir zwei weitere Produkte zu unserer products-Collection hinzu. Die Methode insertMany() nimmt ein Array von Dokumentobjekten als Argument entgegen.

db.products.insertMany([
  {
    name: "Keyboard",
    price: 75,
    category: "Electronics"
  },
  {
    name: "Desk Chair",
    price: 150,
    category: "Furniture"
  }
]);

Die Ausgabe bestätigt, dass die Operation bestätigt wurde, und listet die _id-Werte für jedes der neu eingefügten Dokumente auf.

{
  acknowledged: true,
  insertedIds: {
    '0': ObjectId("..."),
    '1': ObjectId("...")
  }
}

Überprüfen wir nun die Gesamtzahl der Dokumente in der products-Collection. Hierfür können Sie die Methode countDocuments() verwenden.

db.products.countDocuments();

Die Shell sollte 3 zurückgeben, was das eine Dokument aus dem vorherigen Schritt und die beiden, die Sie gerade hinzugefügt haben, widerspiegelt.

3

Dokumente abfragen und anzeigen

Nach dem Einfügen von Daten möchten Sie diese abrufen und anzeigen. Die primäre Methode zum Abfragen einer Collection ist find().

Um alle Dokumente in der products-Collection anzuzeigen, führen Sie die Methode find() ohne Argumente aus.

db.products.find();

Die mongosh-Shell formatiert die Ausgabe automatisch zur besseren Lesbarkeit und zeigt alle drei Dokumente in Ihrer Collection an.

[
  {
    _id: ObjectId("..."),
    name: 'Laptop',
    price: 1200,
    category: 'Electronics'
  },
  {
    _id: ObjectId("..."),
    name: 'Keyboard',
    price: 75,
    category: 'Electronics'
  },
  {
    _id: ObjectId("..."),
    name: 'Desk Chair',
    price: 150,
    category: 'Furniture'
  }
]

Die Methode find() kann auch ein Query-Dokument akzeptieren, um die Ergebnisse zu filtern. Dies ermöglicht es Ihnen, Dokumente zu finden, die bestimmten Kriterien entsprechen. Suchen wir beispielsweise nach allen Produkten in der Kategorie "Electronics".

db.products.find({ category: "Electronics" });

Dieser Befehl gibt nur die Dokumente zurück, bei denen das Feld category den Wert "Electronics" hat.

[
  {
    _id: ObjectId("..."),
    name: 'Laptop',
    price: 1200,
    category: 'Electronics'
  },
  {
    _id: ObjectId("..."),
    name: 'Keyboard',
    price: 75,
    category: 'Electronics'
  }
]

Diese einfache Filterfunktion ist ein mächtiges Werkzeug zum Abrufen spezifischer Daten aus Ihren Collections.

Collection löschen

Im letzten Schritt lernen Sie, wie Sie eine Collection aus einer Datenbank entfernen. Diese Operation ist unumkehrbar und löscht die Collection sowie alle darin enthaltenen Dokumente und Indizes. Sie ist nützlich zum Bereinigen temporärer Daten oder zum Entfernen veralteter Collections.

Um dies zu demonstrieren, erstellen wir zunächst eine temporäre Collection.

db.createCollection("temp_data");
{ ok: 1 }

Verwenden Sie nun die Methode drop() auf der temp_data-Collection, um sie zu entfernen.

db.temp_data.drop();

Der Befehl gibt true zurück, wenn die Collection erfolgreich gelöscht wurde.

true

Um zu überprüfen, ob die Collection entfernt wurde, können Sie alle Collections in der Datenbank erneut auflisten.

show collections

Die Ausgabe zeigt nun nur noch die products-Collection an, was bestätigt, dass temp_data gelöscht wurde.

products

Damit sind die grundlegenden Operationen zur Verwaltung von Collections in MongoDB abgeschlossen. Denken Sie daran, die mongosh-Shell zu verlassen, wenn Sie fertig sind.

exit;

Zusammenfassung

In diesem Lab haben Sie die grundlegenden Fähigkeiten für die Arbeit mit MongoDB erlernt. Sie haben mit der Verbindung zu einer MongoDB-Instanz über die mongosh-Shell begonnen. Anschließend haben Sie das Erstellen einer Datenbank und einer Collection geübt, sowohl einzelne als auch mehrere Dokumente eingefügt und diese Daten mit der find()-Methode abgefragt. Abschließend haben Sie gelernt, wie Sie eine Collection sicher mit dem drop()-Befehl entfernen. Diese Kernoperationen – Erstellen, Lesen und Löschen (Create, Read, Delete) – sind die Bausteine für jede Anwendung, die MongoDB als Datenspeicher verwendet. Sie sind nun mit dem Grundwissen für die Verwaltung von Daten in einer MongoDB-Umgebung ausgestattet.