学习mongdb连接node

一,认识

MongoDB是一种文档导向数据库管理系统,由C++撰写而成。介绍如何使用 Node.js 来连接 MongoDB,并对数据库进行操作。

Mongoose是在node.js异步环境下对mongodb进行便捷操作的对象模型工具。版本:5.4.4

二,配置安装操作

对于先使用,那也是先安装模块

安装mongodb

cnpm install mongodb  --save

引入模块

var mongodb  =require('mongodb  ');

引入mongo

const MongoClient = require("mongodb").MongoClient;

三,使用

可以先封装一个函数进行访问一个数据库

function _connectDB(callback){
    const url = "mongodb://127.0.0.1:27017/dbname";
    MongoClient.connect(url,(err,db)=>{
        if(err){
            callback(err,null);
            return;
        }
        callback(err,db);
    })
}

通过调用回调函数进行访问内部的访问数据库进行一些列的操作
比如我先列举下增加和修改
增加

exports.insertOne = function(collectionName , json , callback){
    _connectDB(function(err,db){
        db.collection(collectionName).insertOne(json,(err,result)=>{
            callback(err,result);
            db.close;
        })
    })
}

同调用回调函数,进行访问数据库发送增加语句,进行操作
node.js

app.get("/addData" , (req , res)=>{
     db.insertOne("student",{"name" : name , "age" : age},(err,result)=>{
         if(err){
             res.send("0");
             return;
         }
         res.send("1");
     })                                     
})

删除

exports.deleteOne = function(collectionName , json , callback){
    _connectDB(function(err,db){
        db.collection(collectionName).deleteOne(json,(err,result)=>{
            callback(err,result);
            db.close;
        })
    })
}

node.js

app.get("/deleteData" , (req , res)=>{
    let _id = req.query._id;
    db.deleteOne("student",{"_id" : new ObjectId(_id)} , (err , result)=>{
        if(err){
            res.send("0");
            return;
        }
        res.send("1");
    })
})

~~

四,前端,node, 数据库之间的数据交互

~~
通过连接数据库,可以方便存储数据,提取数据,通过node.js,调用数据库的数据进行处理,然后前端发送ajax请求,node,js通过拿到发送过来的参数进行处理,找到对于的接口,进行处理发送给数据库,实现增删改查,然后数据库将这些数据放回给node.js,node.js然后将这些数据再次处理,发送给前端,然后就就拿到完整的数据了,然后就可以将这些数据进行渲染了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值