Node.js 操作 MongoDB 数据库实例分析
本文是 Node.js 操作 MongoDB 数据库实例的完整攻略,将涵盖以下内容:
- MongoDB简介
- Node.js操作MongoDB数据库实例说明
- 示例说明
- 总结
MongoDB简介
MongoDB是一个免费、开源、跨平台的NoSQL数据库,旨在优化可伸缩性和开发者生产力。MongoDB将数据存储在一系列文件中,每个文件的大小为64MB。MongoDB支持的数据模型包括文档、键/值和图形。 MongoDB的特点包括:
- 面向文档(BSON)的数据存储。
- 动态架构。
- 高可用性、容错性和集群支持。
- 快速、灵活并支持大容量数据。
Node.js 操作 MongoDB 数据库实例说明
要在Node.js中操作MongoDB数据库,我们需要使用mongodb包。我们可以使用npm安装它:
npm install mongodb
下面是一个使用Node.js连接MongoDB数据库的基本示例代码段:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/mydb';
MongoClient.connect(url, (err, client) => {
if (err) throw err;
const db = client.db('mydb');
console.log("Database created!");
client.close();
});
上面示例中,我们通过MongoClient对象连接了本地的MongoDB服务器。连接字符串的格式为mongodb://[username:password@]host:port/database
,其中:
- username和password是可选的。如果MongoDB是安装在本地机器上且无需用户身份验证,则可以省略用户名和密码参数。
- host是MongoDB服务器运行的主机名或IP地址。
- port是MongoDB服务器监听的端口号。 MongoDB的默认端口号为27017。
- database是要使用的数据库的名称。
示例说明
下面是一些在Node.js中操作MongoDB数据库的常用示例说明:
插入文档
使用 insertOne()
方法可以向MongoDB集合中插入一条文档:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/mydb';
MongoClient.connect(url, (err, client) => {
if (err) throw err;
const db = client.db('mydb');
const collection = db.collection('customers');
const doc = { name: "Tom", address: " Beijing ", age: 22 };
collection.insertOne(doc, (err, res) => {
if (err) throw err;
console.log("1 document inserted");
client.close();
});
});
查询文档
使用 find()
方法可以在MongoDB集合中查询文档:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/mydb';
MongoClient.connect(url, (err, client) => {
if (err) throw err;
const db = client.db('mydb');
const collection = db.collection('customers');
collection.find({}).toArray((err, result) => {
if (err) throw err;
console.log(result);
client.close();
});
});
更新文档
使用 updateOne()
方法可以更新MongoDB集合中的一条文档:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/mydb';
MongoClient.connect(url, (err, client) => {
if (err) throw err;
const db = client.db('mydb');
const collection = db.collection('customers');
const filter = { name: "Tom" };
const update = { $set: { address: "Shanghai" } };
collection.updateOne(filter, update, (err, result) => {
if (err) throw err;
console.log(result.modifiedCount + " document(s) updated");
client.close();
});
});
删除文档
使用 deleteOne()
方法可以在MongoDB集合中删除一条文档:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/mydb';
MongoClient.connect(url, (err, client) => {
if (err) throw err;
const db = client.db('mydb');
const collection = db.collection('customers');
const filter = { name: "Tom" };
collection.deleteOne(filter, (err, result) => {
if (err) throw err;
console.log(result.deletedCount + " document(s) deleted");
client.close();
});
});
总结
通过本文,我们了解了如何在Node.js中使用mongodb模块来连接MongoDB数据库,并演示了文档插入、查询、更新和删除的示例。这只是MongoDB的基础,还有更多关于Node.js和MongoDB相关的知识可以研究和学习。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Node.js操作MongoDB数据库实例分析 - Python技术站