MongoDB

koa(扩展知识, 建议学习)

1. koa是express超集(进阶版)

前后端分离和耦合概念介绍

1. 面向过程 -》 面向对象 --》 面向服务

数据库 Node.js mongodb(bson json的超集)

分类:
    关系型数据库: MySql
    非关系型数据库: MongoDB

MongoDB安装

1. 环境变量设置
2. 系统服务添加有问题
3. 安装
    系统不太支持高版本、 降版本 3.2 3.4
    写在mongodb时候, 记得删除之前创建好的文件夹
4. 每次启动
    最好先
    net start MongoDB
    在:
    mongo

问题?MongodDB

  1. MongoDB的存储数据的形式bson(json的超类,可以存放buff数据)
    2.数据库功能是用来存储数据的。
    3.数据库分为关系系数据库和非关系型数据库(nosql)
    4.关系型数据库是由表和表之间的关系组成的,nosql是由集合组成的,集合下面是很多的文档。
    5.非关系型数据库文件存储格式为BSON(一种JSON的扩展)。

MongoDB操作命令

1. MongoDB连接地址: mongodb://127.0.0.1:27017
2. use db_name
    举例:
        创建: 我们的数据库中没有 你要切换的数据库, 那么即为创建
        切换: 数据库已经存在, 我们从一个数据库切换到另一个数据库
3. show dbs
    将我们本地的所有数据库列出来
4. db/db.getName()
    查看当前使用的数据库
5. MongoDB
    数据库 -》 集合 -》 文档

针对数据库(database)的操作

1. help //不知道命令就help
2. use db_name //进入数据库如果不存在则创建(只有添加了集合才会真的存在)
3. db||db.getName()//数据库名
4. db.stats() //数据库状态
5. db.dropDatabase() //删库
6. show dbs //显示所有的数据库
7. db.version() //查看mongodb数据库的版本
8. db.getMongo()// connection to 127.0.0.1:27017

针对集合(collections)的操作

(1)创建一个集合
db.createCollection("collName", {size: 20, capped: true, max: 100});
db.collName.isCapped(); //判断集合是否为定容量
(2)得到指定名称的集合
db.getCollection("account");
(3)得到当前db的所有集合
db.getCollectionNames();
(4)显示当前db所有集合的状态
db.printCollectionStats()
针对文档(docuemnt)的操作

crud

1. 添加
 1. db.coll_name.save({}) 推荐
 2. db.coll_name.insertOne({})
 3. db.coll_name.insert({})
2. 查询
db.coll_name.find(arg1,arg2) 所有的
    参数解释:
        arg1 表示的是匹配条件
        arg2 表示将来输出的内容匹配 0 表示不要, 1表示要
    举例:
        db.movies.find({year:'1993'},{_id:0,title:1})
升序
    举例:
    db.movies.find({year:'1993'},{_id:0,title:1}).sort({year:1})
降序
举例
db.movies.find({year:'1993'},{_id:0,title:1}).sort({year:-1})
截取 某条以前 limit
    db.movies.find({year:'1993'},{_id:0,title:1}).limit(5)
截取 某条以后 skip
优先级:
sort>skip>limit
$or表示或者, 可以匹配多个条件
    db.teachers.find({$or:[{age:10},{age:40}]})
findOne() 查找第一条数据
    db.teachers.findOne()
count() 计数
举例:
    db.movies.find({year: {$gt:"1993"}},{_id:0,title:1,year:1}).count() //16
3. 删除
db.coll_name.remove({})
4. 修改
db.coll_name.update(arg1,arg2,arg3,arg4)
参数解释:
    1. arg1: 匹配条件
    2. arg2: 修改的具体内容
    3. arg3: false / true 匹配几条 false 一条 true 多条
    4. arg4: false / true 修改几条 false 一条 true 多条
$set 直接设置
    db.teachers.update({age:120},{$set: {age: 80}},false,true)
$inc 在当前基础上增加多少
    db.teachers.update({age:120},{$inc: {age: 80}},false,true)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值