Node.js操作MongoDB数据库(增、删、改、查)
- 先安装组件
mongodb模块:https://www.npmjs.com/package/mongodb
mongoose模块:https://www.npmjs.com/package/mongoose
Node.js 官方自带一套MongoDB的组件
这里我们采用mongoose 来对MongoDB数据库进行操作,但操作Mongoose必须先把MongoDB安装上
安装mongodb模块
npm install mongodb --save
注:--save参数:将mongodb添加到package.json中,为了项目合并时,所需模块,
不需要进行模块包的合并,使用 npm install package.json 里的所又模块都会安装
安装mongoose模块
npm install mongoose
mongoose 是操作mongodb数据库的客户端;`mongoose`需要`mongodb`的支持
-
创建目录开启数据库
mkdir /home/jingyue/mongodb/data_db/home/jingyue/mongodb/bin/mongod --dbpath=/home/scort/mongodb/data_db
插入数据
// 引入mongoose模块
var mongoose = require('mongoose');
//创建链接
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/user');
//定义格式
var monSchema = new mongoose.Schema({
name:{type:String,default:'name'},
age:{type:Number}
});
//创建表
var monModel = db.model('user', monSchema);
//要插入内容
var content = {
name : "阿文",
age : 18
};
//初始化model
var monInsert = new monModel(content);
//执行插入
monInsert.save(function(err, result){
if(err){
console.log(err);
}else{
console.log('写入数据成功');
}
//关闭连接
db.close();
});-
删除数据
// 引入mongoose模块
var mongoose = require('mongoose');
//创建链接
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/user');
//定义格式
var monSchema = new mongoose.Schema({
name:{type:String,default:'name'},
age:{type:Number}
});
//定义model 指定表名
var monModel = db.model('user', monSchema);//条件 var where = {name:"阿文"}; //执行删除 monModel.remove(where, function(err){ if(err){ console.log(err); }else{ console.log('删除成功'); } //关闭连接 db.close(); });
-
更新数据
// 引入mongoose模块
var mongoose = require('mongoose');
//创建链接
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/user');
//定义格式
var monSchema = new mongoose.Schema({
name:{type:String,default:'name'},
age:{type:Number}
});//定义model 指定表名 var monModel = db.model('user', monSchema); //条件 var where = {name:'小月月'}; //设置新值 var newData = {$set : {age:19, name:"文文"}}; //执行删除 monModel.update(where, newData, function(err, result){ if(err){ console.log(err); }else{ console.log('更新成功'); } //关闭连接 db.close(); });
-
查询数据
// 引入mongoose模块
var mongoose = require('mongoose');
//创建链接
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/user');
//定义格式
var monSchema = new mongoose.Schema({
name:{type:String,default:'name'},
age:{type:Number}
});//定义model 指定表名 var monModel = db.model('user', monSchema); //条件 var where = {name:"阿文"}; //指定要查出来的字段 var fields = {name:1, age:1}; //查询 monModel.find(where,fields, function(err, result){ if(err){ console.log(err); }else{ console.log(result); } //关闭连接 db.close(); });