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通 ...
随机推荐
- 看完这篇让你对各种前端build工具不再懵逼!
本文原标题为:我终于弄懂了各种前端build工具 译者:@Christian 译文:https://www.sdk.cn/news/5412 原文:https://medium.freecodecam ...
- UVA 11235Frequent values(RMQ)
训练指南P198 题意:给出一个非降序排列的整数数组a1, a2…… an,你的任务是对于一系列询问(i,j),回答ai, ai+1 ……aj 中出现的次数最多的次数 这题不仅学到了rmq的应用还学到 ...
- set和enum类型的用法和区别
mysql中的set和enum类型的用法和区别 mysql中的enum和set其实都是string类型的而且只能在指定的集合里取值, 不同的是set可以取多个值,enum只能取一个值. 1 2 3 ...
- cookie---session
//以下文字摘自慕课网教程..... 设置cookie PHP设置Cookie最常用的方法就是使用setcookie函数,setcookie具有7个可选参数,我们常用到的为前5个: name( Coo ...
- 第一章 Part 2/2 Git 一览
被跟踪文件(Tracked files) 被跟踪文件是 Git 管理的工作目录 (存储库) 中的文件.当你添加新文件或使更新现有文件时,Git都会跟踪这些文件变化.在某个时间点,你将通过命令将这些文件 ...
- Linux文件类型
1.windows系统和Linux系统的区别 windows通过问价扩展名来区分文件类型,例如*.txt是一个文本文件, linux系统文件的扩展名和文件类型没有关系 为了容易区分文件类型,linux ...
- Springsecurity3.1.3配置多个登陆页面
需求:网站的前台和后台不同的url需要不同的登陆页面,不同的异常捕获方式. spring-security3.1以后的版本支持多个<http>标签,因此本文所采用的方式就是使用两个,实际上 ...
- MFC像窗体坐标位置发送 点击消息
int x11=495; int y22=600; ...
- AngularJs:Service、Factory、Provider依赖注入使用与区别
本教程使用AngularJS版本:1.5.3 AngularJs GitHub: https://github.com/angular/angular.js/ ...
- apache极简配置虚拟机
在apache的httpd.conf文件最后添加: Listen 81<VirtualHost *:81> DocumentRoot E:/CM/wx_shop/ecshop</Vi ...