Table of Contents generated with DocToc
多个键及其关联的值有序的放在一起就是文档。
- 文档的键值对是有序的
- 文档的值不仅可以是字符串,还可以是其他数据类型
文档的键是字符串,可以任用任意的UTF-8字符串,但键不能重复。
注:MongoDB是区分大小写
集合是一组文档。文档类似于MySQL中的行,集合如同表。
集合是无模式的,一个集合里面的文档可以是各式各样的(但最好别这么干)。
集合名可以是任意的UTF-8字符串。
组织集合的惯例是使用"."分开的按命名空间划分的子集合。例如blog.posts和blog.authors。这样做的目的是为了让组织结构更好,但blog这个集合(这里根本不需要存在)及其子集合没有任何关系。
多个集合构成一个数据库。数据库之间是完全独立的,拥有独立的权限控制。
数据库名最终会变成文件系统里的文件。
把数据库的名字放在集合名前面,得到就是集合的完全限定名,称为命名空间。
- 创建:db.blog.insert(post)
- 读取:db.blog.findOne(),find和findOne可以接受查询文档形式的限定条件。
- 更新:db.blog.update(document)
- 删除:db.blog.remove(key : value)
在JSON的基础上,MongoDB添加了其他一些数据类型。
- null
- 布尔
- 32位整数
- 64位整数
- 64位浮点数
- 字符串
- 符号
- 对象id,对象id是文档的12字节的唯一ID
- 日期。日期类型存储的是从标准纪元开始的好面熟,不存储时区
- 正则表达式
- 代码
- 二进制数据,可以由任意字节的串组成
- 最大值
- 最小值
- 未定义。undefined
- 数组
- 内嵌文档
MongoDB中的文档必须有唯一的"__id"键,这个键的值可以是任何类型。默认是一个ObjectId对象。ObjectId使用12字节的存储空间。
上一章:一,简介
下一章:三,创建、更新及删除文档