Introduction
MongoDB is a popular NoSQL database that stores data in JSON-like format. Node.js, being a powerful runtime environment for server-side applications, integrates seamlessly with MongoDB using the official MongoDB Node.js driver.
Prerequisites
- Node.js installed on your system.
- MongoDB installed and running locally or accessible remotely.
Installing the MongoDB Node.js Driver
To access MongoDB in Node.js, you need to install the MongoDB Node.js driver using npm, the Node.js package manager.
bashnpm install mongodb
Connecting to MongoDB
To establish a connection to the MongoDB database, you need to create a MongoClient object. Use the following code as an example:
javascriptconst { MongoClient } = require('mongodb');
const url = 'mongodb://localhost:27017'; // Replace with your MongoDB connection string
const dbName = 'myDatabase'; // Replace with your database name
MongoClient.connect(url, { useUnifiedTopology: true }, (err, client) => {
if (err) {
console.error('Error connecting to MongoDB:', err);
return;
}
const db = client.db(dbName);
console.log('Connected to MongoDB successfully!');
// Perform operations on the database here
client.close(); // Close the connection when done
});
Performing CRUD Operations
Once connected, you can perform CRUD (Create, Read, Update, Delete) operations on the MongoDB database.
- Insert Documents:
javascriptconst collection = db.collection('myCollection'); // Replace 'myCollection' with your collection name
const newDocument = { name: 'John Doe', age: 30, email: 'john@example.com' };
collection.insertOne(newDocument, (err, result) => {
if (err) {
console.error('Error inserting document:', err);
return;
}
console.log('Document inserted successfully:', result.insertedCount);
});
- Query Documents:
javascriptconst query = { age: { $gt: 25 } }; // Find documents where 'age' is greater than 25
collection.find(query).toArray((err, documents) => {
if (err) {
console.error('Error querying documents:', err);
return;
}
console.log('Documents found:', documents);
});
- Update Documents:
javascriptconst filter = { name: 'John Doe' }; // Filter documents with 'name' equal to 'John Doe'
const update = { $set: { age: 35 } }; // Update the 'age' field to 35
collection.updateOne(filter, update, (err, result) => {
if (err) {
console.error('Error updating document:', err);
return;
}
console.log('Document updated successfully:', result.modifiedCount);
});
- Delete Documents:
javascriptconst filter = { email: 'john@example.com' }; // Filter documents with 'email' equal to 'john@example.com'
collection.deleteOne(filter, (err, result) => {
if (err) {
console.error('Error deleting document:', err);
return;
}
console.log('Document deleted successfully:', result.deletedCount);
});
Conclusion
Node.js provides a robust and straightforward way to access MongoDB using the official MongoDB Node.js driver. With this setup, you can easily interact with MongoDB, perform CRUD operations, and build powerful applications with ease. Remember to handle errors appropriately and close the database connection when it's no longer needed.
0 Comments