首页 > 数据库技术 > 详细

Nodejs操作MongoDB数据库

时间:2020-11-06 09:49:38      阅读:27      评论:0      收藏:0      [点我收藏+]

数据库连接

要在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() 方法

技术分享图片

 

Nodejs操作MongoDB数据库

原文:https://www.cnblogs.com/yuyujuan/p/13930301.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!