📜  Node.js 的本机 MongoDB 驱动程序(1)

📅  最后修改于: 2023-12-03 15:17:57.273000             🧑  作者: Mango

Node.js 的本机 MongoDB 驱动程序

在 Node.js 中,MongoDB 是最流行的 NoSQL 数据库之一。为了在 Node.js 中使用 MongoDB,你需要一个驱动程序。本文介绍 Node.js 中的 MongoDB 官方驱动程序 mongodb,它可以在 Node.js 中与 MongoDB 数据库进行交互。

安装

Node.js 的 mongodb 驱动程序可以通过 npm 安装。运行以下命令安装它:

npm install mongodb
连接到 MongoDB

在 Node.js 中连接到 MongoDB 数据库非常简单。只需使用 mongodb 驱动程序的 MongoClient 对象即可:

const MongoClient = require('mongodb').MongoClient;

const uri = "mongodb+srv://<username>:<password>@mycluster.mongodb.net/test?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

client.connect(err => {
    const collection = client.db("test").collection("devices");
    // perform actions on the collection object
    client.close();
});

在上面的例子中,我们使用 MongoClient 对象来连接到 MongoDB 数据库。然后,在回调函数中,我们可以访问数据库连接,并执行我们要执行的操作。

插入数据

下面是如何在 Node.js 中插入一条文档到 MongoDB 数据库的例子:

const MongoClient = require('mongodb').MongoClient;

const uri = "mongodb+srv://<username>:<password>@mycluster.mongodb.net/test?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

client.connect(err => {
    const collection = client.db("test").collection("devices");
    // insert one document
    collection.insertOne({ name: "iPhone X", price: 999 }, function(err, res) {
        console.log("1 document inserted");
        client.close();
    });
});

在上面的例子中,我们使用 insertOne() 方法来插入一条文档到名为 devices 的集合中。一旦操作完成,我们关闭数据库连接。

查找数据

下面是如何在 Node.js 中查询 MongoDB 数据库的例子:

const MongoClient = require('mongodb').MongoClient;

const uri = "mongodb+srv://<username>:<password>@mycluster.mongodb.net/test?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

client.connect(err => {
    const collection = client.db("test").collection("devices");
    // find documents
    collection.find({}).toArray(function(err, docs) {
        console.log("Found the following documents:");
        console.log(docs);
        client.close();
    });
});

在上面的例子中,我们使用 find() 方法来查询 devices 集合中的所有文档。一旦我们获取了所有文档,我们将其打印到控制台并关闭数据库连接。

更新数据

下面是如何在 Node.js 中更新 MongoDB 数据库的例子:

const MongoClient = require('mongodb').MongoClient;

const uri = "mongodb+srv://<username>:<password>@mycluster.mongodb.net/test?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

client.connect(err => {
    const collection = client.db("test").collection("devices");
    // update one document
    collection.updateOne({ name: "iPhone X" }, { $set: { price: 1099 } }, function(err, res) {
        console.log("1 document updated");
        client.close();
    });
});

在上面的例子中,我们使用 updateOne() 方法来更新名为 iPhone X 的文档,将其价格从 999 美元更新为 1099 美元。一旦操作完成,我们关闭数据库连接。

删除数据

下面是如何在 Node.js 中删除 MongoDB 数据库的例子:

const MongoClient = require('mongodb').MongoClient;

const uri = "mongodb+srv://<username>:<password>@mycluster.mongodb.net/test?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

client.connect(err => {
    const collection = client.db("test").collection("devices");
    // delete one document
    collection.deleteOne({ name: "iPhone X" }, function(err, res) {
        console.log("1 document deleted");
        client.close();
    });
});

在上面的例子中,我们使用 deleteOne() 方法删除名为 iPhone X 的文档。一旦操作完成,我们关闭数据库连接。

结论

在 Node.js 中使用 MongoDB 非常简单。只需使用 mongodb 驱动程序,连接到数据库,然后执行您想要的操作即可。掌握这些基本操作后,您应该可以开始构建您自己的应用程序了。