📜  mongodb 从 json 导入 - Javascript (1)

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

MongoDB 从 JSON 导入 - Javascript

在使用 MongoDB 时,经常需要从现有的 JSON 数据中导入到数据库中。本文将介绍如何使用 Javascript 中的 MongoDB 驱动程序来进行这项操作,同时建议先了解 MongoDB 的基本概念和操作。

准备工作

在开始导入之前,需要先安装 MongoDB 驱动程序。可以使用 npm 命令来进行安装:

npm install mongodb --save

然后,需要在代码中引入该模块:

const MongoClient = require('mongodb').MongoClient;
导入操作

在导入前,需要先建立 MongoDB 的连接。连接代码如下所示:

const uri = "mongodb+srv://<username>:<password>@<cluster>.mongodb.net/test?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true });
client.connect(err => {
  const collection = client.db("test").collection("devices");
  // perform actions here
  client.close();
});

其中, <username><password> 分别指代 MongoDB 的用户名和密码, <cluster> 是 MongoDB 的集群名称。

在连接成功后,需要将 JSON 数据转换成 MongoDB 中的文档格式。可以使用以下代码实现:

const data = [
    { name: 'Apple', category: 'Fruit' },
    { name: 'Carrot', category: 'Vegetable' },
    { name: 'Banana', category: 'Fruit' }
];

const documents = data.map(item => ({ ...item }));

考虑到 JSON 格式的数据可能会存在一些不规范的情况,建议在转换时进行数据清理和修正,以确保数据能够正确导入。

接下来,可以使用 MongoDB 的 insertMany() 方法将文档导入到集合中。

collection.insertMany(documents, (err, result) => {
    if(err) {
        console.log(err);
    } else {
        console.log('Documents inserted successfully!');
        client.close();
    }
});

在导入完成后,记得关闭连接。完整的导入代码如下所示:

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

// JSON 数据
const data = [
    { name: 'Apple', category: 'Fruit' },
    { name: 'Carrot', category: 'Vegetable' },
    { name: 'Banana', category: 'Fruit' }
];

client.connect(err => {
    const collection = client.db("test").collection("fruits");

    // 转换为文档格式
    const documents = data.map(item => ({ ...item }));

    // 插入数据
    collection.insertMany(documents, (err, result) => {
        if(err) {
            console.log(err);
        } else {
            console.log('Documents inserted successfully!');
            client.close();
        }
    });
});
总结

本文介绍了使用 Javascript 中的 MongoDB 驱动程序从 JSON 导入到 MongoDB 数据库的方法,步骤包括准备工作、建立连接、数据转换以及导入操作。希望能够对 MongoDB 数据库的使用者有所帮助。