本文共 4682 字,大约阅读时间需要 15 分钟。
express后台
var app = require('express')();var MongoClient = require('mongodb').MongoClient;var url = 'mongodb://127.0.0.1:27017/web';app.set('view engine','ejs');//设置引擎模板为ejsapp.get('/',function (req,res) { MongoClient.connect(url,{useNewUrlParser:true},function (err,client) { if(err){ throw err; } console.log('数据库已经连接成功'); var db = client.db('web'); var result = db.collection('user').find(); console.log(result); //在mongodb中提供 toArray 来去把 看不懂的那个数据 变成 相应的 数组的数据返回到回到函数中 result.toArray(function (err,arr) { if(err){ throw err; } client.close(); console.log(arr); var obj = {arr:arr}; res.render('index',obj);//这种方法是以前的 前后端不分离的方式来去做的 //res.send(obj); 现在的前后端分离的做法 }) // [{},{},{}] //ejs {} })})app.listen(3001);
插入数据
var MongoClient = require('mongodb').MongoClient;var url = 'mongodb://127.0.0.1:27017/web';MongoClient.connect(url,{useNewUrlParser:true},function (err,client) { if(err){ throw err; } console.log('数据库已经连接成功'); var db = client.db('web'); //插入一条数据 //第一个参数 想要插入的数据 对象格式的数据 //第二个参数 回调函数 err result var obj = { name:'koo', sex:'male', height:'180', weight:'140' } //数据库的操作也是异步的操作 所以数据库的关闭 应该写在回调函数中 //插入一条数据insertOne 数据是一个对象 //insertMany 插入多条数据 数据是一个含有多个对象的数组 db.collection('user').insertOne(obj,function (err,result) { console.log(result.result.n);//.ok console.log(result.ops) //result.result.ops //刚刚所插入的数据 // .insertedCount 成功插入的数量 //result.result.n >=1 client.close();//用完之后需要关闭数据库的连接 }) })
插入多条数据
var MongoClient = require('mongodb').MongoClient;var url = 'mongodb://127.0.0.1:27017/web';MongoClient.connect(url,{useNewUrlParser:true},function (err,client) { if(err){ throw err; } console.log('数据库已经连接成功'); var db = client.db('web'); //插入一条数据 //第一个参数 想要插入的数据 对象格式的数据 //第二个参数 回调函数 err result //arr的这个数据 其实是应该前端所传过来的 值 var arr = [ { name:'koo11', sex:'female', height:'280', weight:'240' },{ name:'koo12', sex:'female', height:'260', weight:'200' },{ name:'koo13', sex:'female', height:'380', weight:'340' }, ] //数据库的操作也是异步的操作 所以数据库的关闭 应该写在回调函数中 //插入一条数据insertOne 数据是一个对象 //insertMany 插入多条数据 数据是一个含有多个对象的数组 db.collection('user').insertMany(arr,function (err,result) { console.log(result);//.ok console.log(result.ops) //result.result //result.ops //result.insertedCount //result.insertedIds //这几个字段是比较重要的字段 因为是比较常用的那几个字段 //result.result.ops //刚刚所插入的数据 // .insertedCount 成功插入的数量 //result.result.n >=1 client.close();//用完之后需要关闭数据库的连接 }) })
修改数据
var MongoClient = require('mongodb').MongoClient;var url = 'mongodb://127.0.0.1:27017/web';MongoClient.connect(url,{useNewUrlParser:true},function (err,client) { if(err){ throw err; } console.log('数据库已经连接成功'); var db = client.db('web');// updateOne修改一条mongodb的数据 var obj = {name:'koo'}; var ob2 = {$set:{weight:'160'}}; //第一个参数 筛选条件 //第二条件 设置的值 db.collection('user').updateOne(obj,ob2,function (err,result) { if(err){ throw err; } console.log(result.result.ok); //result: { n: 1, nModified: 1, ok: 1 } client.close();//用完之后需要关闭数据库的连接 }) })
修改多条数据
var MongoClient = require('mongodb').MongoClient;var url = 'mongodb://127.0.0.1:27017/web';MongoClient.connect(url,{useNewUrlParser:true},function (err,client) { if(err){ throw err; } console.log('数据库已经连接成功'); var db = client.db('web');// updateOne修改一条mongodb的数据 var obj = {name:'koo'}; var ob2 = {$set:{weight:'100'}}; //第一个参数 筛选条件 //第二条件 设置的值 db.collection('user').updateMany(obj,ob2,function (err,result) { if(err){ throw err; } console.log(result); console.log(result.result.ok); //result: { n: 1, nModified: 1, ok: 1 } client.close();//用完之后需要关闭数据库的连接 }) })
删除数据
var MongoClient = require('mongodb').MongoClient;var url = 'mongodb://127.0.0.1:27017/web';MongoClient.connect(url,{useNewUrlParser:true},function (err,client) { if(err){ throw err; } console.log('数据库已经连接成功'); var db = client.db('web'); var obj = {name:'koo'}; //第一个参数 筛选条件 db.collection('user').deleteOne(obj,function (err,result) { if(err){ throw err; } console.log(result); //表明所有 修改 插入 删除 的操作 都有 result.result的参数 //用它来去判断相应带的操作 是否成功 client.close();//用完之后需要关闭数据库的连接 }) })
删除多条数据
var MongoClient = require('mongodb').MongoClient;var url = 'mongodb://127.0.0.1:27017/web';MongoClient.connect(url,{useNewUrlParser:true},function (err,client) { if(err){ throw err; } console.log('数据库已经连接成功'); var db = client.db('web'); var obj = {name:'koo'}; //第一个参数 筛选条件 //删除多条和删除单条 所有的写法都是一样 只不过不同方法的调用即可 db.collection('user').deleteMany(obj,function (err,result) { if(err){ throw err; } console.log(result); //表明所有 修改 插入 删除 的操作 都有 result.result的参数 //用它来去判断相应带的操作 是否成功 client.close();//用完之后需要关闭数据库的连接 }) })
转载地址:http://rgdti.baihongyu.com/