- MongoDB权威指南(第3版)
- (美)香农·布拉德肖 克里斯蒂娜·霍多罗夫 (爱尔兰)约恩·布拉齐尔
- 463字
- 2021-12-06 11:37:09
2.1 文档
文档是 MongoDB 的核心概念:它是一组有序键值的集合。文档的表示形式因编程语言而异,但大多数语言具有自然匹配的数据结构,比如映射、哈希表或字典。例如,在 JavaScript 中,文档表示为对象:
{"greeting" : "Hello, world!"}
这个简单的文档只包含一个键,即 "greeting",对应的值为 "Hello, world!"。大多数文档会比这个例子更复杂,并且通常会包含多个键–值对:
{"greeting" : "Hello, world!", "views" : 3}
如上所示,文档中的值不仅仅是“二进制大对象”,它们可以是几种不同的数据类型之一(甚至可以是一个完整的嵌入文档,请参阅 2.6.4 节)。在本例中,"greeting" 的值是一个字符串,而 "views" 的值是一个整数。
文档中的键是字符串类型。除了少数例外的情况,可以使用任意 UTF-8 字符作为键。
- 键中不能含有 \0(空字符)。这个字符用于表示一个键的结束。
- . 和 $ 是特殊字符,只能在某些特定情况下使用,后文会详细说明。通常来说,可以认为这两个字符属于保留字符,如果使用不当,那么驱动程序将无法正常工作。
MongoDB 会区分类型和大小写。例如,下面这两个文档是不同的:
{"count" : 5} {"count" : "5"}
下面这两个文档也不同:
{"count" : 5} {"Count" : 5}
需要注意,MongoDB 中的文档不能包含重复的键。例如,下面这个文档是不合法的。
{"greeting" : "Hello, world!", "greeting" : "Hello, MongoDB!"}