Hướng dẫn download csv nodejs mongodb - tải csv nodejs mongodb

Trong hướng dẫn trước đây, chúng tôi đã biết cách nhập dữ liệu CSV vào bộ sưu tập MongoDB. Hôm nay, chúng tôi sẽ xuất bộ sưu tập MongoDB sang tệp CSV bằng Node.js với hai bước:

  • Đọc dữ liệu từ Bộ sưu tập MongoDB bằng mô -đun
    npm install mongodb
    1
  • Xuất dữ liệu MongoDB sang tệp CSV bằng một trong ba mô -đun:
    npm install mongodb
    2,
    npm install mongodb
    3 hoặc
    npm install mongodb
    4

Nội dung

  • Đọc bộ sưu tập MongoDB
  • Xuất dữ liệu MongoDB sang tệp CSV bằng cách sử dụng Fast-CSV
  • Xuất dữ liệu MongoDB sang tệp CSV bằng FS
  • Xuất dữ liệu MongoDB sang tệp CSV bằng cách sử dụng CSV-Writer
  • Sự kết luận
  • Đọc thêm
  • Mã nguồn

Giả sử rằng cơ sở dữ liệu MongoDB của chúng tôi ZKODER_DB có một danh mục bộ sưu tập như thế này:

db.category.find()

{ "_id" : ObjectId("5d91b4aaae94cf3414c5dd90"), "id" : "1", "name" : "Node.js", "description" : "JavaScript runtime environment", "createdAt" : "2019-09-03" }
{ "_id" : ObjectId("5d91b4aaae94cf3414c5dd91"), "id" : "2", "name" : "Vue.js", "description" : "JavaScript Framework for building UI", "createdAt" : "2019-09-06" }
{ "_id" : ObjectId("5d91b4aaae94cf3414c5dd92"), "id" : "3", "name" : "Angular.js", "description" : "Platform for building mobile & desktop web app", "createdAt" : "2019-09-09" }

Những gì chúng tôi sẽ làm là lấy tất cả các hàng và xuất chúng sang tệp bezkoder.csv.

Chúng tôi sử dụng mô -đun

npm install mongodb
1 để kết nối và lấy dữ liệu từ cơ sở dữ liệu MongoDB.

Chạy lệnh để cài đặt mô -đun:

npm install mongodb

Bây giờ chúng ta có thể sử dụng nó, cách trông giống như:

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

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);

Chúng ta đã làm gì? Nhìn vào mã ở trên: - Đầu tiên chúng tôi nhập lớp

npm install mongodb
6 từ mô -đun
npm install mongodb
1, nó có thể được sử dụng để tạo kết nối với cơ sở dữ liệu MongoDB. - Tiếp theo chúng tôi khởi tạo URL cho kết nối với máy chủ & cổng. - Sau đó, chúng tôi tạo đối tượng
npm install mongodb
8 tương ứng với bộ sưu tập danh mục trong cơ sở dữ liệu ZKODER_DB bằng cách sử dụng
npm install mongodb
9. - Chúng tôi sử dụng phương thức
const mongodb = require("mongodb").MongoClient;

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
0 với tham số
const mongodb = require("mongodb").MongoClient;

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
1 để nói rằng chúng tôi muốn truy vấn tất cả các tài liệu. - Cuối cùng, chúng tôi chuyển đổi kết quả tìm kiếm thành mảng với hàm
const mongodb = require("mongodb").MongoClient;

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
2.
– First we import
npm install mongodb
6 class from
npm install mongodb
1 module, it can be used for make a connection to MongoDB database.
– Next we initialize the url for the connection with host & port.
– Then we generate
npm install mongodb
8 object corresponding to category collection in zkoder_db database using
npm install mongodb
9.
– We use
const mongodb = require("mongodb").MongoClient;

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
0 method with
const mongodb = require("mongodb").MongoClient;

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
1 parameter to tell that we want to query all documents.
– Finally we convert the finding result to array with
const mongodb = require("mongodb").MongoClient;

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
2 function.

Tham số

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

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
3 trong hàm gọi lại sẽ là:

[ { _id: 5d91bdbf77c1094324d00916,
    id: '1',
    name: 'Node.js',
    description: 'JavaScript runtime environment',
    createdAt: '2019-09-03' },
  { _id: 5d91bdbf77c1094324d00917,
    id: '2',
    name: 'Vue.js',
    description: 'JavaScript Framework for building UI',
    createdAt: '2019-09-06' },
  { _id: 5d91bdbf77c1094324d00918,
    id: '3',
    name: 'Angular.js',
    description: 'Platform for building mobile & desktop web app',
    createdAt: '2019-09-09' } ]

Xuất dữ liệu MongoDB sang tệp CSV bằng cách sử dụng Fast-CSV

Xuất dữ liệu MongoDB sang tệp CSV bằng FS
With this way, we need the help of

npm install mongodb
4 module to create a
const mongodb = require("mongodb").MongoClient;

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        
        // TODO: write data to CSV file

        client.close();
      });
  }
);
6 object.

Xuất dữ liệu MongoDB sang tệp CSV bằng cách sử dụng CSV-Writer

const fastcsv = require("fast-csv");
const fs = require("fs");
const ws = fs.createWriteStream("bezkoder_mongodb_fastcsv.csv");

const data = ...;

fastcsv
  .write(data, { headers: true })
  .on("finish", function() {
    console.log("Write to bezkoder_mongodb_fastcsv.csv successfully!");
  })
  .pipe(ws);

Sự kết luận

const mongodb = require("mongodb").MongoClient;
const fastcsv = require("fast-csv");
const fs = require("fs");
const ws = fs.createWriteStream("bezkoder_mongodb_fastcsv.csv");

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        fastcsv
          .write(data, { headers: true })
          .on("finish", function() {
            console.log("Write to bezkoder_mongodb_fastcsv.csv successfully!");
          })
          .pipe(ws);

        client.close();
      });
  }
);

Đọc thêm

_id,id,name,description,createdAt
5d91bdbf77c1094324d00916,1,Node.js,JavaScript runtime environment,2019-09-03
5d91bdbf77c1094324d00917,2,Vue.js,JavaScript Framework for building UI,2019-09-06
5d91bdbf77c1094324d00918,3,Angular.js,Platform for building mobile & desktop web app,2019-09-09

Xuất dữ liệu MongoDB sang tệp CSV bằng FS

Xuất dữ liệu MongoDB sang tệp CSV bằng cách sử dụng CSV-Writer

Sự kết luận

const Json2csvParser = require("json2csv").Parser;
const fs = require("fs");

const data = ...;

const json2csvParser = new Json2csvParser({ header: true });
const csvData = json2csvParser.parse(data);

fs.writeFile("bezkoder_mongodb_fs.csv", csvData, function(error) {
  if (error) throw error;
  console.log("Write to bezkoder_mongodb_fs.csv successfully!");
});

Đọc thêm

const mongodb = require("mongodb").MongoClient;
const Json2csvParser = require("json2csv").Parser;
const fs = require("fs");

// let url = "mongodb://username:[email protected]:27017/";
let url = "mongodb://localhost:27017/";

mongodb.connect(
  url,
  { useNewUrlParser: true, useUnifiedTopology: true },
  (err, client) => {
    if (err) throw err;

    client
      .db("zkoder_db")
      .collection("category")
      .find({})
      .toArray((err, data) => {
        if (err) throw err;

        console.log(data);
        const json2csvParser = new Json2csvParser({ header: true });
        const csvData = json2csvParser.parse(data);

        fs.writeFile("bezkoder_mongodb_fs.csv", csvData, function(error) {
          if (error) throw error;
          console.log("Write to bezkoder_mongodb_fs.csv successfully!");
        });

        client.close();
      });
  }
);

Xuất dữ liệu MongoDB sang tệp CSV bằng cách sử dụng CSV-Writer

Sự kết luận

[ { _id: 5d91bdbf77c1094324d00916,
    id: '1',
    name: 'Node.js',
    description: 'JavaScript runtime environment',
    createdAt: '2019-09-03' },
  { _id: 5d91bdbf77c1094324d00917,
    id: '2',
    name: 'Vue.js',
    description: 'JavaScript Framework for building UI',
    createdAt: '2019-09-06' },
  { _id: 5d91bdbf77c1094324d00918,
    id: '3',
    name: 'Angular.js',
    description: 'Platform for building mobile & desktop web app',
    createdAt: '2019-09-09' } ]
2

Đọc thêm

const createCsvWriter = require("csv-writer").createObjectCsvWriter;

const data = ...;

const csvWriter = createCsvWriter({
  path: "bezkoder_mongodb_csvWriter.csv",
  header: [
    { id: "_id", title: "_id" },
    { id: "id", title: "id" },
    { id: "name", title: "name" },
    { id: "description", title: "description" },
    { id: "created_at", title: "created_at" }
  ]
});

csvWriter
  .writeRecords(data)
  .then(() =>
    console.log("Write to bezkoder_mongodb_csvWriter.csv successfully!")
  );

Mã nguồn

Giả sử rằng cơ sở dữ liệu MongoDB của chúng tôi ZKODER_DB có một danh mục bộ sưu tập như thế này:

npm install mongodb
0

Sự kết luận

Đọc thêm
Then export MongoDB collection to a CSV file in three ways using:

  • npm install mongodb
    2
  • npm install mongodb
    3
  • npm install mongodb
    4

Mã nguồn
Import CSV file into MongoDB collection using Node.js

Giả sử rằng cơ sở dữ liệu MongoDB của chúng tôi ZKODER_DB có một danh mục bộ sưu tập như thế này:

Đọc thêm

  • Mã nguồn
  • https://www.npmjs.com/package/csv-writer
  • https://www.npmjs.com/package/json2csv
  • https://www.npmjs.com/package/fast-csv
  • https://www.npmjs.com/package/mongodb

Mã nguồn

Giả sử rằng cơ sở dữ liệu MongoDB của chúng tôi ZKODER_DB có một danh mục bộ sưu tập như thế này: