mongoDB的一些基本操作

  1. 数据库

    • 使用数据结构来组织、管理、存储数据的仓库
  2. 数据库分类

    • 关系型数据库
      • 代表: MySql
    • 非关系型数据库
      • 代表:MongoDB
  3. 两个类型数据库的区分

    • 是否有表
  4. 两个数据库构成

    • SQL
      • 数据库 - 表 - 行
    • NoSql
      • 数据库 - 集合 - 文档
      • 文档: 一个bson的键值对文档
  5. bson

    • bson是json的超集
    • bson比json多了二进制等数据类型
    • MongoDB的存储数据类型就是bson
  6. MongoDB的安装和配置
    net start mongoDB 开启monggoDB
    net stop mongoDB 关闭mongoDB
    mongod 开启mongoDB服务
    mongo 打开mongoDB终端
    显示数据库列表 > show dbs
    创建数据库 > use 数据库名 如果没有数据库就创建数据库如果有就切换到该数据库
    显示数据库中的集合 show collections

  7. MongoDB特点

    • 分布式存储
  8. MongoDB基本操作 【 CURD 】(增删改查)
    mongoDB的RUDS
    增加数据

    db.webs.save({“name”:“张三”,“age”:“18”,sex:“man”})
    db.webs.insert({“name”:“李四”,“age”:“18”,sex:“man”})
    修改数

    db.webs.save({"_id":ObjectId(“5da445c25aaed432028d2cce”),“name”:“王五”})})

    db.webs.update({“name”:“赵六”},{$set:{sex:“man”}},true,true)
    第一个参数是查找条件,第二个参数是修改内容,主键不能修改,第三个参数表示匹配所有符合条件的数据,第四个参数表示修改所有匹配到的数据(为true则更改所有的数据,为false只修改匹配的第一个数据)

    删除数据

    db.webd.remove({}) 删除集合下的所有数据
    db.webs.remove({name:“张三”}) 删除集合下对匹配的记录
    db.webd.drop()或db.runCommand({“drop”:“webs”}) 删除集合users
    db.runCommand({“dropDatabase”: 1}) 删除当前数据库,注意 此处的1没加双引号
    查询数据

    db.webs.find() 查找users集合中所有数据
    db.webs.findOne() 查找users集合中的第一条数据
    db.webs.find().pretty() 格式化查询到的数据
    条件查找

    db.webs.find({name:“张三”})
    db.webs.find({age:{$gt:“18”}}) 查询集合中大于18的数据 小于(lt) 大于等于(gte) 小于等于(lte)
    db.webs.find({ “age” : { $gt: age, KaTeX parse error: Expected 'EOF', got '}' at position 8: lt: age}̲ })匹配18<X<25 d…ne:“25”}}) 查询年龄不是25岁的
    db.webs.find({ “age” : { KaTeX parse error: Expected 'EOF', got '}' at position 18: …d : [ 10 , 1 ] }̲ }) 查询age%10==1…in:[“25”,“18”]}}) 查询指定年龄的可用于直接匹配序号
    db.collection.find({ “key” : { KaTeX parse error: Expected 'EOF', got '}' at position 18: …n: [ 1, 2, 3 ] }̲ }) 不属于,条件相当于ke…exists:[“18”]}}) 查询webs中是否包含age建有就返回含有age的数据
    db.collection.find({ “key” : { $size: 1 } }) KaTeX parse error: Expected '}', got 'EOF' at end of input: … db.webs.find({or:[{name:“张三”},{age:“18”}]}) 查询name=张三后者age=18的记录
    db.webs.find({“score.yy”:80}) 查询一个对象,
    db.webs.find().sort({age:-1}) -1(降序) 1(升序)
    db.webs.find().limit(4) 返回n条数据如果n=0返回所有数据
    db.webs.find().skip(3) 跳过前面n条数据返回后面的所有数据

我们需要使用一个第三方用来管理MongoDB的模块: Mongoose

  1. Node中最盛行的两个框架
  • express
  • koa/koa2
    • koa是express升级版
  1. 包管理器问题
  • npm 是全球最大的包管理器,它对应的网站是 www.npmjs.com
    • 第三方的,速度较慢
  • cnpm 是国内淘宝镜像源 它对应的网站是: https://registry.npm.taobao.org
    • 国内的, 速度较快 ,不安全,不稳定
    • 安装
      • $ npm install -g cnpm --registry=https://registry.npm.taobao.org
    • 测试
      • $ cnpm -v 有输出没有报错,那么恭喜你,安装成功了
  1. 代码思维

    • 正向
    • 逆向
  2. some

    • some是数组遍历的一种方式
    • 作用: 判断某一个数据是否在数组当中,并且只找一个
    • 如果数据存在,返回true,否则是 false
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值