标签:mode 方式 操作 文档 creat string end done 函数返回
var mongoose=require("mongoose"); mongoose.connect("mongodb://127.0.0.1/mongoose_test",{useMongoClient:true}); //数据库打开的监听事件 mongoose.connection.once("open",function(){ console.log("数据库连接成功~~~"); }); //数据库关闭的监听事件 mongoose.connection.once("close",function(){ console.log("数据库已断开~~~"); }); //创建Schema 对象 var Schema =mongoose.Schema; var stuSchema=new Schema({ name:String, age:Number, gender:{//数据类型是String,默认值是 female type:String, default:"female" }, address:String }); /** * 有了Model,我们就可以来对数据库进行增删改查的操作了 */ var StuModel =mongoose.model("students",stuSchema); /** * Model.create(doc(s),[callback]) * 用来创建一个或多个文档并添加到数据库中 * 参数: * doc(s) 可以是一个文档对象,也可以是一个文档的数组 * callback 当操作完成以后调用的回调函数 ,回调函数可以省略不写 */ StuModel.create([ { name:"猪八戒", age:28, gender:"male", address:"高老庄" },{ name:"唐僧", age:16, gender:"male", address:"女儿国" } ],function(err){ if(!err){ console.log("插入成功!"); } });
/** * 查询所有符号条件的文档 * Model.find(conditions,[projection],[options],[callback]) * 根据文档的id属性查询文档 * Model.findById(id,[projection],[options],[callback]) * 查询符合条件的第一个文档 * Model.findOne([conditions],[projection],[options],[callback]) * * conditions 查询的条件 * projection 投影 * options 查询选项(skip limit) * callback 回调函数,查询结果会通过回调函数返回 * 回调函数必须传,如果不传回调函数,压根不会查询 */ StuModel.find({name:"唐僧"},function(err,docs){ if(!err){ console.log(docs); } });
//投影 StuModel.find({},{name:1,_id:0},function(err,docs){ if(!err){ console.log(docs); } });
投影也可以这样写(-_id表示不显示):
StuModel.find({},"name age -_id",function(err,docs){ if(!err){ console.log(docs); } });
//跳过 StuModel.find({},"name age -_id",{skip:3},function(err,docs){ if(!err){ console.log(docs); } });
//跳过 StuModel.find({},"name age -_id",{skip:2,limit:1},function(err,docs){ if(!err){ console.log(docs); } });
//通过Id查询一个文档 StuModel.findById("6014aa020e3c7334146e06a6",function(err,doc){ if(!err){ console.log(doc); } });
注意:通过find()查询的结果,返回的对象,就是Document,文档对象
Document对象是Model的实例
比如:doc就是StuModel的对象。
//检查是否是实例 console.log(doc instanceof StuModel);
var mongoose=require("mongoose"); mongoose.connect("mongodb://127.0.0.1/mongoose_test",{useMongoClient:true}); //数据库打开的监听事件 mongoose.connection.once("open",function(){ console.log("数据库连接成功~~~"); }); //数据库关闭的监听事件 mongoose.connection.once("close",function(){ console.log("数据库已断开~~~"); }); //创建Schema 对象 var Schema =mongoose.Schema; var stuSchema=new Schema({ name:String, age:Number, gender:{//数据类型是String,默认值是 female type:String, default:"female" }, address:String }); /** * 有了Model,我们就可以来对数据库进行增删改查的操作了 */ var StuModel =mongoose.model("students",stuSchema); /** * 用来修改一个或多个文档 * Model.update(conditions,doc,[options],[callback]) * 用来修改一个文档 * Model.update(conditions,doc,[options],[callback]) * 用来修改多个文档 * Model.update(conditions,doc,[options],[callback]) * * 参数: * conditions 查询条件 * doc 修改后的对象 * options 配置参数 * callback 回调函数 */ StuModel.updateOne({name:"孙悟空"},{$set:{age:100}},function(err){ if(!err){ console.log("修改成功~"); } });
var mongoose=require("mongoose"); mongoose.connect("mongodb://127.0.0.1/mongoose_test",{useMongoClient:true}); //数据库打开的监听事件 mongoose.connection.once("open",function(){ console.log("数据库连接成功~~~"); }); //数据库关闭的监听事件 mongoose.connection.once("close",function(){ console.log("数据库已断开~~~"); }); //创建Schema 对象 var Schema =mongoose.Schema; var stuSchema=new Schema({ name:String, age:Number, gender:{//数据类型是String,默认值是 female type:String, default:"female" }, address:String }); /** * 有了Model,我们就可以来对数据库进行增删改查的操作了 */ var StuModel =mongoose.model("students",stuSchema); /** * 删除一个或多个文档 * Model.remove(conditions,[callback]) * 删除一个文档 * Model.deleteOne(conditions,[callback]) * 删除多个文档 * Model.deleteMany(conditions,[callback]) */ //1.查看 StuModel.findOne({name:"猪八戒"},function(err,doc){ if(!err){ console.log(doc); } }) //2.删除 StuModel.remove({name:"猪八戒"},function(err){ if(!err){ console.log("删除成功~"); } }); //3.在查看 StuModel.findOne({name:"猪八戒"},function(err,doc){ if(!err){ console.log(doc); } })
var mongoose=require("mongoose"); mongoose.connect("mongodb://127.0.0.1/mongoose_test",{useMongoClient:true}); //数据库打开的监听事件 mongoose.connection.once("open",function(){ console.log("数据库连接成功~~~"); }); //数据库关闭的监听事件 mongoose.connection.once("close",function(){ console.log("数据库已断开~~~"); }); //创建Schema 对象 var Schema =mongoose.Schema; var stuSchema=new Schema({ name:String, age:Number, gender:{//数据类型是String,默认值是 female type:String, default:"female" }, address:String }); /** * 有了Model,我们就可以来对数据库进行增删改查的操作了 */ var StuModel =mongoose.model("students",stuSchema); /** * 统计符合查询条件的文档的数量 * Model.count(conditions,[callback]) */ StuModel.count({},function(err,count){ if(!err){ console.log(count); } });
标签:mode 方式 操作 文档 creat string end done 函数返回
原文地址:https://www.cnblogs.com/ckfuture/p/14348168.html