mongodb和nodejs mongoose使用详解

安装mongodb

首先要安装mongodb,具体安装过程参考菜鸟教程

运行mongodb

因为我是mac,所以以下内容以OS系统为主,Windows系统建议参考 菜鸟教程

进入mongodb的bin文件目录下,运行mongod执行文件

sudo ./mongod //以管理员身份运行

然后另开一个命令行,同样进入mongodb的bin文件目录下,运行mongo执行文件,然后便会进入mongodb的shell环境

./mongo
//进入mongodb的shell环境
>2+2
4

在mongodb的shell环境中可以直接操作数据库,语法请参考菜鸟教程
但shell操作比较反人类,我在这里推荐mongodb的GUI软件——Robo 3T,可以自行在官网下载

nodejs中mongodb的API

在nodejs环境中我选择的是mongoose模块

var mongoose=require('mongoose')

mongoose语法

详情请戳 mongoose官网

连接数据库

mongoose.connect('mongodb://localhost:27017/test')//test即为存储的数据库名称,如果不存在将会自动生成
定义Schema和model
var CatSchema=mongoose.Schema({
    name:String,
    age:Number
})

var Cat=mongoose.model('Cat',CatSchema)
//也可以合二为一,直接定义model
var Cat=mongoose.model('Cat',{
    name:String,
    age:Number
})
//mongoose.model的第一个参数的字符串加上字母s便是储存在的数据库表单的名称(Cats)
mongoose Schema常用预置类型:
  1. String 字符串
  2. Number 数字
  3. Date 日期
  4. Boolean 布尔值
  5. 和数组结合:[String] [Number]...
创建实例
var kitty=new Cat({
    name:'Kitty',
    age:3
})
插入
kitty.save(function(err,res){
    if(err) console.error(err)
    else console.log(res)//res为保存成功的对象
})
更新
var where={
    name:'Kitty'
}
var update={
    age:4
}

Cat.update(where,update,function(err,res){
    if(err) console.error(err)
    else console.log(res)
})

通过ID查找并更新的方法

Cat.findByIdAndUpdate(whereById,update,function(err,res)){
    if(err) console.error(err)
    else console.log(res)
})
删除
Cat.remove(where,function(err,res))
//通过ID查找并删除
Cat.findByIdAndRomove(where,function(err,res))
查找
Cat.find(where,function(err,res))//res 返回查找到的对象数组

//可以限定输出的内容
var opt={
     name:1//选择输出的值为1,不输出的值为0(其他不指定默认为0)
}
Cat.find(where,opt,function(err,res))

//var where=_id
Cat.findById(where,function(err,res))//res 输出查询到的对象
查询
Cat.count(where,function(err,res))//res输出查询数量
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值