在上一篇 《MongoDB 实战教程:数据库与集合的 CRUD 操作篇》 中,我们学习了MongoDB 与 NoSQL 的关系、 MongoDB 的安装、数据类型、MongoShell、创建数据库、显式创建集合和隐式创建集合,还学习了如何更改集合名称以及删除数据库和集合的方法,并对每种操作都进行了实例演示。
在本篇 chat 中我们将学习流式聚合操作,并深入了解语句的执行效率。然后深入学习能够提高数据服务可用性的复制集。接着了解 MongoDB 的水平扩展能力,学习 MongoDB 数据的备份与还原方法,并为数据服务开启访问控制。
基础篇 一 文档的 CRUD 操作
CRUD 操作指的是对文档进行 `create`,`read`,`update` and `delete` 操作,即增删改查。文档 CRUD 操作的内容将分为 `Create Operations`, `Read Operations`, `Update Operations`, `Delete Operations` 和 `Cursor` 等 5 个部分进行介绍。
Create Operations
创建操作或者插入操作会向集合添加新的文档。之前有提到过,如果插入时集合不存在,插入操作会创建对应的集合。MongoDB 提供了 3 个插入文档的方法:
插入单个文档
自动命令执行后会返回一个结果文档,文档输出如下:
这说明文档插入成功。其中,`acknowledged` 代表本次操作的操作状态,状态值包括 `true` 和 `false`。`insertedId` 即该文档的 `_id`。
提示:示例中的省略号是 MongoShell 的换行标识符。换行标识符对命令输入和执行并没有影响,所以本文也不会注重风格的统一,即示例中有时会带有换行符,有时则不带有换行符。
插入多个文档
由于本次插入了 2 个文档,所以返回的结果文档会显示两个 `_id`。返回文档内容如下:
Read Operations
查询文档
或者什么都不传,直接使用 `find()`,对应示例如下:
这等效于 SQL 中的 `SELECT * FROM inven`。
领取专属 10元无门槛券
私享最新 技术干货