安装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常用预置类型:
- String 字符串
- Number 数字
- Date 日期
- Boolean 布尔值
- 和数组结合:[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输出查询数量