Nodejs操作MongoDB数据库
数据库连接
要在node.js中使用MongoDb,首先需要执行命令 npm install mongodb --save 进行安装,然后在页面中进行引入:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017';
const dbName = 'mongo';
const client = new MongoClient(url,{useUnifiedTopology:true});
client.connect(function(error){
if(error){
console.log(error);
return;
}else{
console.log('连接成功');
}
})

由于本地测试数据库没有开启权限验证,上面可以直接连接,如果数据库开启了权限验证的话,就需要使用下面的方式进行连接:其中admin 表示用户名,123456 表示密码。
const url = 'mongodb://admin:123456@localhost:27017/';
创建集合
使用 createCollection() 方法来创建集合
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017';
const dbName = 'mongo';
const client = new MongoClient(url,{useUnifiedTopology:true});
client.connect(function(error){
if(error){
console.log(error);
return;
}else{
console.log('连接成功');
const db = client.db(dbName);
db.createCollection('order',function(err,res){
if(err){
console.log(err);
return
}else{
console.log(res);
client.close();
}
})
}
})
删除集合
我们可以使用 drop() 方法来删除集合,执行成功 res 返回 true,否则返回 false

也可以使用dropCollection()来删除集合,返回结果和上面相同。

插入文档
单条插入
单条插入使用insertOne(),接收一个对象:
console.log('连接成功');
const db = client.db(dbName);
db.collection('order').insertOne({type:1,name:'矿泉水',price:2},function(err,res){
if(err){
console.log(err);
return;
}else{
console.log(res);
client.close();
}
})
多条插入
如果要插入多条数据,可以使用insertMany(),接收一个数组:
console.log('连接成功');
const db = client.db(dbName);
let arr=[
{type:1,name:'可乐',price:4},
{type:2,name:'记号笔',price:10},
{type:2,name:'笔记本',price:8},
];
db.collection('order').insertMany(arr,function(err,res){
if(err){
console.log(err);
return;
}else{
console.log(res);
client.close();
}
})

更新文档
单条更新
单条更新符合条件的数据,可以使用updateOne():

多条更新
如果要更新所有符合条的文档数据可以使用 updateMany():


查询
查询使用find(),然后使用toArray()将返回结果转为数组:

带条件查询

排序

删除文档
根据条件,单条数据的删除,使用deleteOne():

如果要删除多条语句可以使用 deleteMany() 方法

浙公网安备 33010602011771号