Model方法
增
model.create({}/[{},...],回调函数(err对象));
const xx=new model({xx}); xx.save(function(err,data){xx})
查
modole.find({查询条件},"字段1 字段2 -字段3"/可选,{skip:数值,limit:数值}/可选,function(err,docs文档返回数组){...});
第二个参数查询指定显示的内容0和-表示不显示(不返回),也可用{条件:0}来表示不显示
modole.findOne({查询条件},"字段1 字段2 -字段3"/可选,{skip:数值,limit:数值}/可选,function(err,doc文档对象){...});查询符合条件的第一个文档对象,可直接.操作
modole.findById("id字符串",function(err,doc对象){...})); 返回的doc对象可直接.操作
限定查找条件和数据库的修饰符一样
model.count({条件,{}为所有},回调函数(err对象,num结果)); 查询数据库的个数
改
model.update({修改条件},{新内容},配置选项{multi:true修改多个},回调函数);
model.updateOne({修改条件},{新内容},配置选项,回调函数);
model.findByIdAndUpdate({_id:'xx'},{新内容},回调(err,修改前doc))
model.updateMany({修改条件},{新内容},配置选项,回调函数);
和数据库的修饰符一样
删
model.remove({删除条件},回调函数);
model.deleteOne({删除条件},回调函数);
model.deleteMany({删除条件},回调函数);
代码示例:
/**
* Created by 10853 on 2020/1/31.
*/
//mongoose
var mongoose =require('mongoose');
mongoose.connect('mongodb://localhost/play',{ useNewUrlParser: true, useUnifiedTopology: true });
//schema
var schema=mongoose.Schema;
var stuSch=new schema({
name:String,
age:Number,
address:String,
gender:{
//该字段类型是String,默认值是female,插入时不写也会自动添加
type:String,
default:'female'
}
})
//model
var Mod=mongoose.model('student',stuSch);
//Mod.create({name:'swk',age:18,gender:'male',address:'hgs'},function(err){if(!err){console.log('插入成功')}})
//Mod.create([{name:'zbj',age:19,gender:'male',address:'hgs'},{name:'ts',age:17,gender:'male',address:'hgs'}],function(err){if(!err){console.log('成功')}});
Mod.find({name:'ts'},function(err,docs){
if(!err)
{
console.log(docs);
}
})
Mod.find({},"age address -_id ",{skip:2,limit:1},function(err,docs){console.log(docs)});
Mod.findOne({},function(err,doc){
console.log(doc.name);
})
Mod.findById("5e33cb729fd25c5098e1ed47",function(err,doc){console.log(doc)})
Mod.updateOne({name:'ts'},{$set:{name:'tss'}},function(err){if(!err){console.log('修改成功')}});
Mod.remove({name:'tss'},function(err){if(!err){console.log('删除成功')}});
Mod.count({},function(err,num){if(!err){console.log(num)}});
mongoose.connection.once('open',function(){
console.log('数据库已连接');
})
mongoose.connection.once('close',function(){
console.log('数据库已断开')
})