How to Bulk Import a CSV File Into MongoDB Using Multer With Node.js


Import Excel Data to the MongoDB Database Using Multer



MongoDB stands out as a versatile and scalable NoSQL database management solution, providing an intuitive object modeling interface for Node.js. 

As data volume increases, the necessity for effective data input procedures becomes critical. Uploading CSV files is a common format for storing tabular data. In this blog, we'll look at how to bulk import CSV files into MongoDB using Node.js.

Lets Set up the Project

To begin, create a new Node.js application. In a command prompt, browse to the location where you want to put your Node.js apps and run the following commands:



Using the -y lets the project to be initialised using the default values, resulting in the application starting with index.js. In your command prompt, enter the following command to install Express:


Because our application will accept files using a web form, we will also use the Express sub-package Express File Upload. Let's install it as well:



Create an index.js file in the root directory and include the code snippets listed below. This file sets up the web server.



This file imports the Express and Express File Upload libraries, sets up the web application to use File Upload, and listens on port 3000. It also builds an Express route at "/" that will serve as the web application's default landing page. This route delivers an index.html file with a web form that allows users to upload CSV files.

To start your web server, type the following command in your terminal:



You should see the following message in your terminal: Server launched on port 3000. This signifies you've successfully connected to the web server.

In the root directory, create an index.html file. This file generates the form for uploading CSV files.

Let's look at the Author Schema. But, as you might expect, we need to install the Mongoose package first.


Create a Schema

Here, we will develop a student module by creating a student.js file that will store student data in the Student named collection.



 Create the Form Markup to Upload the Excel file in the index.ejs file


Uploading the File into the Database

Multer is well-known for its simplicity and effectiveness in file management on an express server.

To allow the express app to accept files, we will use Multer storage for file uploads. This storage will be used to retrieve the uploaded file.


The code above will generate disk storage for the file in the root directory's public folder. By hitting the submit button, data is retrieved from each row of the uploaded file and imported into the student collection via the insert many methods.

Happy Coding✌

codegirl

Hello! I'm a Developer with a strong passion for coding and writing. My expertise lies in creating scalable web applications using leading-edge technologies. I am proficient in various programming languages, including Java, SQL, Mongodb, Express Js, Node JS, React Js and Next.js. Beyond coding, I shine in the world of technical content writing, using my knowledge to create engaging and informative articles.

Post a Comment

Previous Post Next Post