1、MongoDB基本概念:


(1)文档是MongoDB的基本单位,类似于关系型数据中的行。


(2)集合可以看做一个拥有动态模式的表


(3)MongoDB一个实例可以拥有多个相互独立的数据库,每一个数据库都拥有自己的集合


(4)每一个文档都有一个特殊的键“_id”,这个键在文档所属的集合中是唯一的


(5)MongoDB自带一个简单而且功能强大的JavaScript Shell,用于管理MongoDB的实例和数据操作。


2、MongoDB结构


集合相当于关系数据库中的表


文档相当于关系数据库中的行


集合就是一组文档


3、集合(动态模式)


3.1集合使用名称进行标识,集合需要满足下面的条件:


(1)编码格式为utf-8


(2)集合名不能是空字符串


(3)集合名不能包含\0字符串(空字符串),这个再集合名中代表集合的结束


(4)集合名不能以“system.”开头,因为这是为系统集合保留的前缀。例如“system.users”保存这数据库用户的集合信息,"system.namespace"保存着所有数据库的集合信息。


(5)集合名中不能包含"$",因为某些系统生成的集中中包含"$",很多驱动程序确实支持集合名中包含此字符。除非你要访问这种系统创建的集合,否则不应该在集合名中包含此字符。


(6)集合名不能以数字开头


3.2子集合(这种方式组织数据非常高效,之后进行详细概述)


一般用.的方式,例如blog.posts,blog.authors


4、数据库


在mongodb中,一个MongoDB实例可以承载多个数据库,每个数据库中拥有多个集合,每个集合中拥有多个文档。


数据库命名规则:


1、编码格式:utf-8


2、不能用很多字符(不用一一说明,基本上就是只能用ASCII上的字符和数字)


3、数据库名区分大小写,但是通常情况下用小写。


4、数据库名最多64字节


???为什么数据库名有这么多婆婆妈妈的要求


因为每个数据库最后都会生成系统中的文件,而名称就是数据库的名称。