当前位置: 首页 > 知识库问答 >
问题:

导出mongodb集合数据并使用节点js将其导入回

芮立果
2023-03-14

我是mongodb新手,所以需要一些帮助,用NodeJs导出和导入mongodb数据。我有一个mongodb数据库和一些集合(如产品集合、公式集合和规则集合,其中有产品id引用),我想根据api请求的参数导出不同集合中的数据,并生成包含相应数据的文件,该文件将在客户端浏览器上下载。用户可以使用导出的文件将导出的数据导入到另一个数据库实例中。我已经搜索了这个主题,并得到了这个答案,我不确定是否可以使用mongoexport来完成我的任务。任何我该怎么做的想法。任何帮助或想法都得到了极大的启发。提前谢了。

共有1个答案

欧阳衡
2023-03-14

这段代码将从MongoDB集合中读取文档(导出功能),然后以JSON的形式写入文件。该文件用于读取(导入功能)并将JSON插入到另一个集合中。代码使用MongoDB NodeJS驱动程序。

出口:

根据提供的查询从集合incollection中读取,并以JSON“out_file.JSON”的形式写入文件。

const MongoClient = require('mongodb').MongoClient;
const fs = require('fs');
const dbName = 'testDB';
const client = new MongoClient('mongodb://localhost:27017', { useUnifiedTopology:true });

client.connect(function(err) {
    //assert.equal(null, err);
    console.log('Connected successfully to server');
    const db = client.db(dbName);

    getDocuments(db, function(docs) {
    
        console.log('Closing connection.');
        client.close();
        
        // Write to file
        try {
            fs.writeFileSync('out_file.json', JSON.stringify(docs));
            console.log('Done writing to file.');
        }
        catch(err) {
            console.log('Error writing to file', err)
        }
    });
}

const getDocuments = function(db, callback) {
    const query = { };  // this is your query criteria
    db.collection("inCollection")
      .find(query)
      .toArray(function(err, result) { 
          if (err) throw err; 
          callback(result); 
    }); 
};
client.connect(function(err) {

    const db = client.db(dbName);
    const data = fs.readFileSync('out_file.json');
    const docs = JSON.parse(data.toString());
    
    db.collection('outCollection')
        .insertMany(docs, function(err, result) {
            if (err) throw err;
            console.log('Inserted docs:', result.insertedCount);
            client.close();
    });
});
 类似资料:
  • 我试图使用node连接mongodb。js。我偶然发现了一个问题。我正在得到要求(…)。pure不是函数错误。我试图使用这个网站上的确切代码“https://mongodb.github.io/node-mongodb-native/api-generated/collection.html“我的代码如下所示。 请让我知道你的建议。

  • 导入/导出节点: 您可以在图1.32区域1进行节点的导入导出操作。

  • 如何将所有数据批量存储到后端? 模式之间的引用很少,因此是否会创建新的'_id'从而影响我的引用 如果您认为这不是导出数据的正确方法,那么如何使用node Express来完成?

  • 我还遗漏了什么参数吗?

  • 问题内容: 我想从PHPMyAdmin(或MySQl Workbench)导出数据库,然后将其导入SQLite数据库,这样我就可以进行本地编辑和测试而不会破坏实时版本。我对SQL非常陌生,因此所有导出选项等在这一点上对我来说都很密集。我尝试通过命令使用默认的导出设置PHPMyAdmin 也 但是这些引发了很多语法错误和“没有这样的表”错误。 我还尝试了在此处找到的经常被引用的脚本脚本,但是当我尝试

  • 本文向大家介绍深入分析Mongodb数据的导入导出,包括了深入分析Mongodb数据的导入导出的使用技巧和注意事项,需要的朋友参考一下 一、Mongodb导出工具mongoexport Mongodb中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件。可以通过参数指定导出的数据项,也可以根据指定的条件导出数据。 mongoexport具体用法 参数说明