Mongoose学习(1)
2016-05-15 22:11
453 查看
1、
2、
3、下面我们来一段代码理解一下
varUserSchema=newmongoose.Schema({
username:String,//定义一个属性name,类型为String
password:String
});
varUserModel=db.model('user',UserSchema);
varuserEntity=newUserModel({name:'lsg'});
4、创建数据库连接
varmongoose=require('mongoose');//引用mongoose模块
vardb=mongoose.createConnection('127.0.0.1','test');//创建一个数据库连接
5、打开数据库
db.on('error',console.error.bind(console,'连接错误:'));
db.once('open',function(){
//一次打开记录
});
6、接下来我就完成一个CRUD(create,read,update,delete)的例子
7、数据更新,这里我们有很多方法,接下来我介绍一种是常用的
UserModel.findById(id,function(err,user){
user.username='lsg';
user.password='123456';
user.save(function(err,data){});
});
8、查询,分为直接查询和链式查询
UserModel.findOne({'username':'lsg'},'someselect',function(err,user){
//如果err==null,则user就能取到数据
//someselect要返回的字段如usernamepassword
});
链式的我直接上官方列子http://mongoosejs.com/docs/2.7.x/docs/finding-documents.html
Model
.where('age').gte(25)
.where('tags').in(['movie','music','art'])
.select('name','age','tags')
.skip(20)
.limit(10)
.asc('age')
.slaveOk()
.hint({age:1,name:1})
.exec(callback);
9、数据新增,同样只介绍一种
varuser=newUserModel({username:'lsg',password:'123456'});
user.save(callback);
10、删除
UserModel.remove({
username:'lsg'
},function(err,r){
if(err)returncallback&&callback(err);
returncallback&&callback(null);
})
Schema:一种以文件形式存储的数据库模型骨架,不具备数据库的操作能力
Model:由
Schema发布生成的模型,具有抽象属性和行为的数据库操作对
Entity:由
Model创建的实体,他的操作也会影响数据库
2、
Schema、
Model、
Entity的关系请牢记,
Schema生成
Model,
Model创造
Entity,
Model和
Entity都可对数据库操作造成影响,但
Model比
Entity更具操作性。
3、下面我们来一段代码理解一下
4、创建数据库连接
5、打开数据库
6、接下来我就完成一个CRUD(create,read,update,delete)的例子
7、数据更新,这里我们有很多方法,接下来我介绍一种是常用的
8、查询,分为直接查询和链式查询
链式的我直接上官方列子
9、数据新增,同样只介绍一种
10、删除
相关文章推荐
- [POJ2262]Goldbach's Conjecture
- ROS(indigo)_turtlebot仿真示例包括stage和gazebo
- ROS(indigo)_turtlebot仿真示例包括stage和gazebo
- ROS(indigo)_turtlebot仿真示例包括stage和gazebo
- django:Many-to-many关系
- Django Meta内部类选项
- Django url.py文件配置错误解决办法
- [Machine Learning & Algorithm]CAML机器学习系列1:深入浅出ML之Regression家族
- POJ 1003 Hangover GCC编译
- Gof_设计模式之代理模式
- Unable to resolve target 'Google Inc.:Google APIs:8
- django框架从零开始_010_自动化测试
- objc category的秘密
- google hacking搜索语法总结
- GOICE项目初探
- golang slice 切片原理
- 安装pillow
- 【GDOI2016Day2】第一题SigemaGO
- golang中一些基础用法
- 脑洞君来了,Google 2016科学挑战赛即将举行