JavaScript

超轻量级php框架startmvc

nodejs对mongodb数据库的增加修删该查实例代码

更新时间:2020-09-29 03:18:01 作者:startmvc
以下是实例代码:/**1.npminstallmongodb--save-dev/cnpminstallmongodb--save-dev2.varMongoClient=require('mongodb')

以下是实例代码:


/**
1.npm install mongodb --save-dev / cnpm install mongodb --save-dev

2.var MongoClient = require('mongodb').MongoClient;

 var url = 'mongodb://localhost:27017/test'; 连接数据库的地址

 3.连接数据库

 MongoClient.connect(url, function(err, db) {

});

 4.实现增加修改删除

 MongoClient.connect(url, function(err, db) {

 db.collection('user').insertOne({'name':'zhangsan'},function(error,data){

 })

});


 */
var http=require('http');

var ejs=require('ejs');

var MongoClient = require('mongodb').MongoClient; /*引入数据库 MongoClient*/

var DBurl = 'mongodb://localhost:27017/userDb'; // 连接数据库的地址 student表示数据库的名称

var url=require('url'); /*引入url模块*/
var app=require('./model/express-route.js');

http.createServer(app).listen(3000);


app.get('/',function(req,res){
 var msg='这是数据库的数据'
 ejs.renderFile('views/index.ejs',{msg:msg},function(err,data){
 res.send(data);
 })

})



app.get('/add',function(req,res){
 //增加数据

 MongoClient.connect(DBurl,function(err,db){ /*连接数据库*/

 if(err){

 console.log(err);
 console.log('数据库连接失败');
 return;
 }

 //增加数据

 db.collection('user').insertOne({

 "name":"loaderman",
 "age":10

 },function(error,result){
 if(error){

 console.log('增加数据失败');
 return;
 }
 res.send('增加数据成功');
 db.close();/*关闭数据库*/
 })



 })
})




app.get('/edit',function(req,res){
 //增加数据

 //res.send('修改数据成功');


 MongoClient.connect(DBurl,function(err,db){

 if(err){

 console.log(err);
 console.log('数据库连接失败');
 return;
 }
 db.collection('user').updateOne({"name":"loaderman"},{$set:{
 "age":666
 }},function(error,data){
 if(error){

 console.log('修改数据失败');
 return;
 }

 console.log(data);
 res.send('修改数据成功');
 db.close();/*关闭数据库*/

 })



 })

})


app.get('/delete',function(req,res){
 //增加数据
 //delete?name=lisi


 //console.log(url.parse(req.url,true));

 var query=url.parse(req.url,true).query;


 //console.log(query.name);

 var name=query.name;


 MongoClient.connect(DBurl,function(err,db){

 if(err){

 console.log(err);
 console.log('数据库连接失败');
 return;
 }

 db.collection('user').deleteOne({"name":name},function(error,data){

 if(error){

 console.log('删除失败');
 return;
 }

 console.log(data);
 res.send('删除数据成功');
 db.close();

 })
 })
})

app.get('/query',function(req,res){
 MongoClient.connect(DBurl,function(err,db){
 if(err){

 console.log('连接数据库失败');
 return;
 }

 //查询数据
 var list=[]; /*放数据库里面查询的所有数据*/

 var result=db.collection('user').find({});


 result.each(function(error,doc){


 //console.log(doc);
 if(error){
 console.log(error);
 }else{

 if(doc!=null){
 list.push(doc);

 }else{ /*doc==null表示数据循环完成*/

 /*获取数据以后*/
 //console.log(list);

 ejs.renderFile('views/index.ejs',{list:list},function(err,data){

 res.send(data);
 })

 }

 }

 })

 //console.log(result);

 })

})

插入数据


/**
 * 插入单条数据
 * @param table_name 表名
 * @param insertData 插入的数据
 * @param callback 回调方法
 */
MongoDbAction.insertData= function (table_name, insertData , callback) {
 var node_model = this.getConnection(table_name);
 node_model.insertOne(insertData , function (err, res) {
 if (err) {
 callback(err);
 } else {
 callback(null, res);
 }
 });
};

查询数据


/**
 * 查询单条数据
 * @param table_name 表名
 * @param conditions 查询条件
 * @param callback 回调方法
 */
MongoDbAction.findOne = function (table_name, conditions, callback) {
 var node_model = this.getConnection(table_name);
 node_model.findOne(conditions, function (err, res) {
 if (err) {
 callback(err);
 } else {
 callback(null, res);
 }
 });
};

更新数据


/**
 * 更新单条数据
 * @param table_name 表名
 * @param conditions 查询条件 {"name":'jackson影琪'}; 
 * @param updateStr 更新数据 {$set: { "url" : "https://www.cnblogs.com/jackson-zhangjiang" }};
 * @param callback 回调方法
 */
MongoDbAction.updateOne= function (table_name, conditions,updateStr , callback) {
 var node_model = this.getConnection(table_name);
 node_model.updateOne(conditions,updateStr, function (err, res) {
 if (err) {
 callback(err);
 } else {
 callback(null, res);
 }
 });
};

以上就是本次介绍的全部相关知识点,感谢大家的学习。如果有任何补充,可以联系小编。

nodejs mongodb 数据库操作