前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MongoDB简析

MongoDB简析

作者头像
挽风
发布2021-04-13 14:29:47
9780
发布2021-04-13 14:29:47
举报
文章被收录于专栏:小道

MongoDB(NoSQL 文档型数据库 非关系型数据库)

一、JSON

 Ⅰ、JSON就是一个字符串,通过Json可以标识不同语言的对象,并且该字符串可以转换为不同语言中的对象;

 Ⅱ、Json的规范:

   (1)Json是一个字符串;

   (2)Json中的属性名必须用双引号括起来;

 Ⅲ、Json的两种格式:

   (1)Json对象:{} {“name”:“秃子”,“age”:23}

   (2)Json数组:[] [123,true,“test”]

 Ⅳ、Json中可以保存的数据类型:

   (1)Number  (2)String  (3)Boolean

   (4)null  (5)Object  (6)Array

 Ⅴ、在Js中有一个对象–JSON,通过该对象可以对JSON进行解析:

   (1) Json —> Object var obj = JSON.Parse(json);

   (2) Object —> Json var json = Json.Stringify(obj);

 Ⅵ、Java在默认情况下不支持Json解析,需要引入第三方jar包;

    JSON-lib   jackson   gson

    Gson gson = new Gson();

    Map map = gson.fromJson(json,Map.class); Json —> Object

    Student st = gson.fromJson(json,Student.class); Json —> Object

    String json = gson.toJson(st); Object —> Json

二、MongoDB

 Ⅰ、MongoDB是为快速发展互联网web应用而设计的数据库系统;

 Ⅱ、MongoDB的设计目标是极简、灵活、作为web应用栈的一部分;

 Ⅲ、MongoDB的数据模型是面向文档的,所谓的面向文档是一种类似于Json的数据结构,简单理解MongoDB中存储的是各式各样的Json(Bson);

 Ⅳ、三个重要概念:

   (1)数据库:数据库是一个仓库,在仓库中可以存放集合;

   (2)集合:集合类似于数组,在集合中可以存放文档;

   (3)文档:文档数据库中最小的单位,存储和操作的内容都是文档,在MongoDB中每一条数据都一个文档;

 Ⅴ、MongoDB的偶数版本是稳定版,奇数版本为开发版,且在3.2版本之后不再支持32位操作系统;

 Ⅵ、在MongoDB中,数据库和集合都不需要预创建,在第一次插入数据时会自动创建;

 Ⅶ、基本操作指令:

   (1)show dbs   – 查询所有数据库

   (2)use tableName   --进入指定数据库内

   (3)db   --当前数据库

   (4)show collections   --查询当前数据库内所有集合

   (5)db..insert(doc)   --向指定集合中插入文档

   (5)db..find()   --查询指定集合中所有文档,返回数组

   (5)db..count()   --统计集合中文档个数

   (5)db..drop()   --删除集合(若只有一个集合,数据库也会被删除)

   (5)db..remove(doc)   删除文档,不可逆操作

   (5)db..update(doc)   修改文档

 Ⅷ、插入的文档对象会默认添加 _id 属性,这个属性对应一个唯一id,是文档的唯一标识(可以手动指定,但需要确保唯一性,不推荐使用);

 Ⅸ、修改器

   使用update会将整个文档进行替换,但是大部分情况下无需这么做,如果只对文档中一部分进行更新,则可以使用更新修改器:

   (1) –KaTeX parse error: Expected '}', got 'EOF' at end of input: …n.update(查询对象,{set:更新对象});

   (2) --$unset 用来删除文档中一个不需要的字段

   (3) --$inc 用来增加已有键的值,该键不存在则创建,只能用于Number类型的值;

 Ⅹ、查询条件

and   lt     lte   gt   ne   or   in   nin   not   exists;

 Ⅺ、MongoDB的文档的属性值也可以是文档,称之为内嵌文档,要匹配内嵌文档的属性,需要通过 . 的方式进行查询,且属性名必须加引号;

    db.collection.find({“c.name”:“tom”});

 Ⅻ、limit(n) 查询前n条数据   skip(n) 跳过前n条数据

   在MongoDB中通过limit和skip完成分页 limit(每页条数).skip(每页条数*(页码-1));

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/12/03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MongoDB(NoSQL 文档型数据库 非关系型数据库)
    • 一、JSON
      • 二、MongoDB
      相关产品与服务
      云数据库 MongoDB
      腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档