node10-mongoose
目录:
node01-创建服务器
node02-util
node03-events
node04-buffer
node05-fs
node06-path
node07-http
node08-express
node09-cookie
mongoose模块:
var mongoose = require("mongoose");
var db = mongoose.connect("mongodb://localhost:27017/person");
//连接失败触发事件error
db.connection.on("error",function(err){
console.error(err);
});
db.connection.on("open",function(){
console.log("连接成功");
});
//构建数据库模型骨架
var personSchema = new mongoose.Schema({
user:{type:String},
age:{type:Number,default:18}
},{
collection:"person"
});
//构建模型
var Model = db.model("person",personSchema);
//模型实体化,构建一个文档
var personEntity = new Model({
user:"wangliu",
age:46
});
// personEntity.save(function(err,doc){
// if(err){
// console.error(err);
// }else{
// console.log(doc);
// }
// });
//插入
// Model.create([{user:"x",age:45},{user:"xx",age:55}],function (err,doc) {
// if(!err){
// console.log(doc);
// }
// });
//更改
// Model.update({user:"wangwu"},{$set:{user:"wangle"}},function (err) {
// if(!err){
// console.log("更新成功");
// }
// });
//更新多条
// Model.update({user:"x"},{$set:{user:"xxxx"}},{multi:true},function(err){
// if(!err){
// console.log("更新多条成功");
// }
// });
//删除
// Model.remove({user:"xxx"},function (err) {
// if(!err){
// console.log("删除成功");
// }
// });
//查询
// Model.find({},{age:1,_id:0},function(err,doc){
// if(!err){
// console.log(doc);
// }
// })
// Model.findOne({age:22},function (err,doc) {
// if(!err){
// console.log(doc);
// }
// })
// Model.findById("5848bbabea39fd64371d00ab",function (err,doc) {
// console.log(doc);
// });//纯纯的id,不带objectId
//高级查询
// Model.find({age:{$gt:43}},function (err,doc) {
// console.log(doc);
// });//大于
// Model.find({age:{$lt:43}},function (err,doc) {
// console.log(doc);
// });//小于
// Model.find({age:{$ne:43}},function (err,doc) {
// console.log(doc);
// });//不等于
// Model.find({$or:[{user:"xx"},{age:22}]},function (err,doc) {
// console.log(doc);
// })//或
// Model.find({__v:{$exists:true}},function (err,doc) {
// console.log(doc);
// });//是否存在
// Model.find({},{},{limit:6},function (err,doc) {
// console.log(doc);
// });//限制
// Model.find({},{},{skip:6},function (err,doc) {
// console.log(doc);
// });//跳过
// Model.find({},{},{limit:6,skip:2},function (err,doc) {
// console.log(doc);
// });//限制与跳过
Model.find({},{},{sort:{age:1}},function (err,doc) {
console.log(doc);
});//排序,-1倒序,1正序
node10-mongoose的更多相关文章
- mongoose - 让node.js高效操作mongodb
Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装,一种对象模型工具,类似ORM,Mongoose将数据库中的数据转换为JavaScript对象以供你在应用中使用. ...
- 在mongoose中使用$match对id失效的解决方法
Topic.aggregate( //{$match:{_id:"5576b59e192868d01f75486c"}}, //not work //{$match:{title: ...
- Mongo基础使用,以及在Express项目中使用Mongoose
MongoDB的基本使用 MongoDB特点: 使用BSON存储数据 支持相对丰富的查询操作(相对其他nosql数据库) 支持索引 副本集(支持多个实例/多个服务器运行同个数据库) 分片(数据库水平扩 ...
- mongoose数据库连接和操作
var mongoose = require('mongoose') mongoose.connect('mongodb://localhost:27017/hometown'); var db = ...
- mongoose 和 mongoDB
第三方学习地址:http://blog.csdn.net/foruok/article/details/47746057 下载mongoDB https://www.mongodb.com/downl ...
- Nodejs之MEAN栈开发(三)---- 使用Mongoose创建模型及API
继续开扒我们的MEAN栈开发之路,前面两节我们学习了Express.Jade引擎并创建了几个静态页面,最后通过Heroku部署了应用. Nodejs之MEAN栈开发(一)---- 路由与控制器 Nod ...
- Mongoose Schemas定义中timestamps选项的妙用
在Node.js中使用MongoDB少不了Mongoose. 假设有如下Mongoose Schemas的定义: var ItemSchema = new mongoose.Schema({ biz: ...
- Mongodb 数据类型及Mongoose常用CURD
前言 看完了Node.js实战,其中在数据存储部分提到了Redis.Mongodb,我自己也根据书中的介绍写了几个简单的demo,在demo的过程首先遇到的问题就是数据类型和常见的CURD写法. mo ...
- Mongoose使用案例--让JSON数据直接入库MongoDB
目录 1.准备工作. 2.配置Mongoose. 3.创建目录及文件. 4.插入数据,POST提交JSON增加一条记录. 5.查询数据,取出你插入数据库的记录. 一.准备工作 使用Express4创建 ...
- 利用Mongoose来结构化模式与验证
Mongoose是一个文档对象模型(ODM)库,为MongoDB Node.js原生驱动程序提供更多的功能. 把结构化的模式应用到一个MongoDB集合,提供了验证和类型转换的好处 Mongoose通 ...
随机推荐
- java版简易socket客户端
android项目需要使用到心跳, 于是编写了一个简易的socket客户端程序 主要功能是给服务端发送心跳包,保持在线状态 没有使用框架,这样避免了需要引入包,直接使用的阻塞Socket通信. 主要逻 ...
- cocos2d-x屏幕分辨率,窗口大小总结
这个东西很烦人,相信很多人都不理解 今天来总结一下,首先有很多概念都要事先弄得清楚明白 1.屏幕分辨率 所谓屏幕分辨率相信很多人都知道他的概念,不就是1280pxX720PX吗?不就是这种形式吗?有什 ...
- BZOJ 1227: [SDOI2009]虔诚的墓主人
1227: [SDOI2009]虔诚的墓主人 Time Limit: 5 Sec Memory Limit: 259 MBSubmit: 1078 Solved: 510[Submit][Stat ...
- 爬虫框架--webmagic
官方有详细的使用文档:http://webmagic.io/docs/zh/ 简介:这只是个java爬虫框架,具体使用需要个人去定制,没有图片验证,不能获取js渲染的网页,但简单易用,可以通过xpat ...
- ADO.net
五大对象: 1.Connection(连接数据库) 2.Command(执行T-SQL语句) 3.DataAdapter(用户填充DataSet,断开模式) 4.DataReader(读取数据库,一种 ...
- 疯狂JAVA16课之对象与内存控制
java内存管理分为两个方面:内存分配和内存回收.这里的内存分配特指创建java对象时JVM为该对象在对内存中所分配的内存空间.内存回收指的是当该java对象失去引用,变成垃圾时,JVM的垃圾回收机制 ...
- Jmeter响应内容为文件
最近测试一个接口是文档转换的接口,比如说把rtf文件转换为PDF,这样的接口调用通过结果树只能查看接口响应是否成功,但是看不到转换后的文档.通过Jmeter监听中的Save Responses to ...
- coreseek 安装及使用方法详解
coreseek 安装及使用 一般站点都需要搜索功能,如果是php+mysql站点,建议选择coreseek,如果是java站点建议使用lucene,coreseek 是一款很好的中文全文检索/搜索软 ...
- Django基础,Day2 - 编写urls,views,models
编写views views:作为MVC中的C,接收用户的输入,调用数据库Model层和业务逻辑Model层,处理后将处理结果渲染到V层中去. polls/views.py: from django.h ...
- iOS 判断网络连接状态的几种方法
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "PingFang SC"; color: #801b80 } p.p2 ...