Heim > Web-Frontend > js-Tutorial > Hauptteil

Erfahren Sie mehr über das Hinzufügen, Löschen, Ändern und Abfragen in Knoten in MongoDB

不言
Freigeben: 2018-07-27 11:07:46
Original
1503 Leute haben es durchsucht

Dieser Artikel stellt Ihnen den Inhalt des Artikels zum Hinzufügen, Löschen, Ändern und Einchecken von Knoten in MongoDB vor. Er hat einen guten Referenzwert und ich hoffe, er kann Freunden in Not helfen.

Vorbereitung

Um mongoDB im Knoten zu verwenden, müssen Sie zunächst den MongoDB-Treiber installieren. Der Befehl lautet wie folgt: npm install mongodb --save
github-Adresse: node-mongodb-. native

Denken Sie gleichzeitig daran, den mongoDB-Dienst zu aktivieren.

Hinzugefügt

Der folgende Code fügt ein Dokument in die Aufgabensammlung in der Datenbank demodb ein und gibt die ID des Dokuments auf der Konsole aus.

const MongoClient = require('mongodb').MongoClient

const assert = require('assert')
const url = 'mongodb://localhost:27017'
const dbName = 'demodb'

// 增
MongoClient.connect(url, function(err, client) {
  assert.equal(null, err)
  console.log("Connected successfully to server")

  const db = client.db(dbName)
  var tasks = db.collection('tasks') // 没有则创建
  tasks.insertOne(
    {
      "project": "task1",
      "description": "task1 description."
    },
    {safe: true},
    function(err, documents) {
      if (err) throw err;
      console.log(documents.insertedId);
    }
  );

  client.close()
})
Nach dem Login kopieren

Führen Sie das Programm aus und finden Sie die folgenden auf der Konsole gedruckten Ergebnisse

Connected successfully to server
5b59d53ae3d895184824586b
Nach dem Login kopieren

Die zurückgegebene 5b59d53ae3d895184824586b ist die Dokumentkennung von MongoDB und ist im Wesentlichen binärer JSON BSON) ist BSON das Hauptdatenformat, das MongoDB zum Datenaustausch verwendet, und der MongoDB-Server verwendet es anstelle von JSON zum Datenaustausch. In den meisten Fällen ist es platzsparender und schneller zu analysieren.
Der deklarierte {safe: true} gibt an, dass die Rückruffunktion erst ausgeführt wird, wenn der Datenbankvorgang abgeschlossen ist.

Hinweis: Aus praktischen Gründen ist der Autorisierungsmodus hier nicht aktiviert. Daher benötigen Sie keinen Benutzernamen und kein Passwort in der Anmelde-URL und können unter hinzufügen, löschen, ändern und überprüfen Wille. Denken Sie jedoch in der Produktionsumgebung daran, den Autorisierungsmodus zu aktivieren.

Löschen

Der folgende Code findet das Dokument, dessen Projekt task1 ist, in der Aufgabensammlung in der Datenbank demodb und löscht es.

// 删
MongoClient.connect(url, function(err, client) {
  assert.equal(null, err)
  console.log("Connected successfully to server")

  const db = client.db(dbName)
  var tasks = db.collection('tasks')
  tasks.deleteOne(
    {
      "project": "task1"
    },
    function(err, result) {
      assert.equal(err, null);
      assert.equal(1, result.result.n);
      console.log("Removed the document");
    }
  );

  client.close()
})
Nach dem Login kopieren

Hinweis: Wenn in der Aufgabensammlung mehrere Dokumente mit Projektaufgabe1 vorhanden sind, wird nur das gefundene Dokument des ersten Tages gelöscht.

Änderung

Der folgende Code findet das Dokument, dessen Projekt task1 ist, in der Aufgabensammlung in der Datenbank demodb und aktualisiert es.

// 改
MongoClient.connect(url, function(err, client) {
  assert.equal(null, err)
  console.log("Connected successfully to server")

  const db = client.db(dbName)
  var tasks = db.collection('tasks')
  tasks.updateOne(
    {
      "project": "task1"
    },
    { $set: { "project" : "task999" } },
    {safe: true},
    function(err, result) {
      assert.equal(err, null);
      assert.equal(1, result.result.n);
      console.log("Updated the document");
    }
  );

  client.close()
})
Nach dem Login kopieren

Hinweis: Wenn das Dokument mit Projektaufgabe1 nicht in der Aufgabensammlung gefunden wird, gibt das Programm einen Assertionsfehler wie folgt aus:

Erfahren Sie mehr über das Hinzufügen, Löschen, Ändern und Abfragen in Knoten in MongoDB

Überprüfen

Der folgende Code findet alle Dokumente in der Aufgabensammlung in der Datenbank demodb und druckt sie auf der Konsole aus. Die Methode

// 查
MongoClient.connect(url, function(err, client) {
  assert.equal(null, err)
  console.log("Connected successfully to server")

  const db = client.db(dbName)
  var tasks = db.collection('tasks')
  tasks.find().toArray((err, docs) => {
    console.log(docs)
    assert.equal(null, err) // err 不等于null, 则在控制台打印err
    // assert.equal(3, docs.length) // 记录不等于3条, 则在控制台打印记录条数
  })
  client.close()
})
Nach dem Login kopieren

find() findet alle Dokumente, toArray() wandelt die Ergebnisse in Array-Form um und führt das Programm aus. Die Ergebnisse sind wie folgt:

Erfahren Sie mehr über das Hinzufügen, Löschen, Ändern und Abfragen in Knoten in MongoDB

Zusammenfassung

Obwohl die oben genannten vier kleinen Programme etwas einfach sind, können Sie nicht tausend Meilen erreichen, ohne kleine Schritte zu unternehmen, wenn Sie das grundlegende Hinzufügen, Löschen, Ändern usw. wirklich beherrschen Suchen, dann ist es nur eine Frage der Zeit, bis Sie komplexe Anwendungen beherrschen.

Verwandte Empfehlungen:

Einführung in Benutzer und Berechtigungen in mongoDB

Das obige ist der detaillierte Inhalt vonErfahren Sie mehr über das Hinzufügen, Löschen, Ändern und Abfragen in Knoten in MongoDB. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!