数据库
MongoDB的一个实例可以拥有一个或多个相互独立的数据库,每个数据库都有自己的集合
 
集合
集合可以看作是拥有动态模式的表
 
文档
文档是MongoDB中基本的数据单元,类似于RDB的行。
文档是键值对的一个有序集合。在JS中,文档被表示成对象。
 
_id
每个文档都有个特殊的“_id”,在文档所属集合中是唯一的
 
JavaScript shell
MongoDB自带了一个功能强大的JavaScript Shell,可以用于管理或操作MongoDB
②MongoDB和RDB的一些对比

1:都有数据库的概念

2:集合--〉RDB的表

3:文档--〉RDB表中的一条记录

4:文档对象里面的key --〉RDB表中的字段

5:文档对象里面的value--〉RDB表中字段的值

6:MongoDB中没有主外键的概念

③数据库名称定义规则

1:不能是空串

2:不得含有/、\、?、$、空格、空字符等等,基本只能使用ASCII中的字母和数字

3:区分大小写,建议全部小写

4:最多为64字节

5:不得使用保留的数据库名,比如:admin,local,config

注意:数据库最终会成为文件,数据库名就是文件的名称

④集合名称定义规则

1:不能是空串

2:不能包含字符(空字符),这个字符表示集合名的结束,也不能包含”$”

3:不能以”system.”开头,这是为系统集合保留的前缀

⑤文档的键的定义规则

1:不能包含字符(空字符),这个字符表示键的结束

2:“.”和“$”是被保留的,只能在特定环境下用

3:区分类型,同时也区分大小写

4:键不能重复

注意:文档的键值对是有顺序的,相同的键值对如果有不同顺序的话,也是不同的文档

⑥MongoDB基本的数据类型
数据类型 描述 举例
null 表示空值或者未定义的对象 {"x":null}
布尔值 true或者false {"x":true}
32位整数 shell不支持该类型,默认会转换成64位浮点数,也可以使用NumberInt类 {“x”:NumberInt(“3”)}
64位整数 shell不支持该类型,默认会转换成64位浮点数,也可以使用NumberLong类 {“x”:NumberLong(“3”)}
64位浮点数 shell中的数字就是这一种类型 {"x":3.14,"y":3}
字符串 UTF-8字符串 {"foo":"bar"}
符号 shell不支持,shell会将数据库中的符号类型的数据自动转换成字符串  
对象id 文档的12字节的唯一id {"id": ObjectId()}
日期 从标准纪元开始的毫秒数 {"date":new Date()}
正则表达式 文档中可以包含正则表达式,遵循JavaScript的语法 {"foo":/foobar/i}
代码 文档中可以包含JavaScript代码 {"x":function() {}}
未定义 undefined  {"x":undefined}
数组 值的集合或者列表 {"arr": ["a","b"]}
内嵌文档 文档可以作为文档中某个key的value  {"x":{"foo":"bar"}}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

第04章:MongoDB基本概念的更多相关文章

  1. [React] 04 - Intro: mongoDB becomes popular

    Ref: Linux平台安装MongoDB - 菜鸟教程 安装:sudo apt-get install mongodb 安装完毕产生: ls /etc/init.d/mongodb 配置:vim / ...

  2. 异步编程系列第04章 编写Async方法

    p { display: block; margin: 3px 0 0 0; } --> 写在前面 在学异步,有位园友推荐了<async in C#5.0>,没找到中文版,恰巧也想提 ...

  3. mongodb基本概念解析

    MongoDB 概念解析 不管我们学习什么数据库都应该学习其中的基础概念,在mongodb中基本的概念是文档.集合.数据库,下面我们挨个介绍. 下表将帮助您更容易理解Mongo中的一些概念: SQL术 ...

  4. Ubuntu16.04安装mongodb

    Ubuntu16.04安装mongodb copy from: http://blog.csdn.net/zhushh/article/details/52451441 1.导入软件源的公钥 sudo ...

  5. 003.MongoDB主要概念

    一 对比关系 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行 ...

  6. Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 说在前面的话  首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...

  7. Ubuntu 18.04安装MongoDB 4.0(社区版)

    Ubuntu 18.04(虚拟机VirtualBox上),MongoDB 4.0, 听室友说,23点有世界杯决赛呢!可是,孤要写博文的啊!以记录这忙乱的下午和晚间成功安装了一个软件到Linux上.—— ...

  8. Ubuntu16.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 说在前面的话  首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...

  9. &lt;&lt;Python基础教程&gt;&gt;学习笔记 | 第04章 | 字典

    第04章:字典 当索引不好用时 Python唯一的内建的映射类型,无序,但都存储在一个特定的键中.键能够使字符.数字.或者是元祖. ------ 字典使用: 表征游戏棋盘的状态,每一个键都是由坐标值组 ...

  10. Ubuntu14.04下Mongodb数据库可视化工具安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 前期博客 Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐) Ubuntu14.04下Mongodb官网安装部署步骤(图 ...

随机推荐

  1. python----二叉树实现及相关操作

    一.二叉树子节点个数 #初始化叶子节点和根结点 class treeNode(): def __init__(self,data=-1,left=None,right=None): self.data ...

  2. Linux系统下重启Tomcat

    在Linux系统下,重启Tomcat使用命令操作的! 首先,进入Tomcat下的bin目录 cd /usr/local/tomcat/bin 使用Tomcat关闭命令 ./shutdown.sh 查看 ...

  3. 让listView gridView全部扩展开

    public class NoScrollListView extends ListView {    public NoScrollListView(Context context, Attribu ...

  4. c#编写windows服务在开机是OnStart启动超时

    1.编写服务对应的config文件, 比如我的服务叫ModbusAgent.exe,对应的文件叫ModbusAgent.exe.config 文件内容: <?xml version=" ...

  5. 自定义 Mysql 类 与 自定义 异常类

    import MySQLdb class MyExcept(Exception): ''' 常见做法定义异常基类,然后在派生不同类型的异常 ''' def __init__(self, *args): ...

  6. java 与 或 非 异或 & | ~ ^

    1.与运算符 & 两个操作数中位,否则结果为0 2.或运算符 | 两个位,否则就为0 3.非运算符 ~ 如果位为,结果是,如果位为1,结果是0 4.异或运算符 ^ 两个操作数的位中,,不同则结 ...

  7. 为Linux虚拟机设置网络

    安装虚拟机的时候为了使用方便我们除了需要设置静态ip为了能够让虚拟机也能够上网我们需要设置虚拟机网络 当然也可以使用虚拟机和主机共享上网,这个比较简单,这里就不说了,现在我们来通过桥接的方式为虚拟机设 ...

  8. windbg 边学边记attach 进程和open dump的两个方式查看线程的占用cpu资源

    首先我是attach到进程的方式,附加到进程把. vs里边有个远程调试就是通过连接到远程机附加到进程操作的.在 有公网IP情况下挺好用,但涉及到nat穿越之类的,因为用户的不方便设置,这种调试方式也有 ...

  9. Ionic3--数据存储

    1.使用sqlite cordova plugin add cordova-sqlite-storage --save npm install --save @ionic/storage (本地存储) ...

  10. 理解String拼接,+运算符重载的实际效果

    引申:一个常见的String的面试题 public static void main(String[] args) { // TODO Auto-generated method stub Strin ...