express后台
var app = require('express')();
var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://127.0.0.1:27017/web';
app.set('view engine','ejs');//设置引擎模板为ejs
app.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();//用完之后需要关闭数据库的连接
})
})