文档是什么?文档是文档数据库中的记录。文档通常存储有关一个对象及其相关元数据的的信息。文档以“字段-值”对的形式存储数据。值可以是各种类型和结构,包括字符串、数字、日期、数组或对象。文档可以存储为 JSON、BSON 和 XML 等格式。

以下是一个 JSON 文档,其中存储了名为 Tom 的用户的信息。

{

"_id": 1,

"first_name": "Tom",

"email": "tom@example.com",

"cell": "765-555-5555",

"likes": [

"fashion",

"spas",

"shopping"

],

"businesses": [

{

"name": "Entertainment 1080",

"partner": "Jean",

"status": "Bankrupt",

"date_founded": {

"$date": "2012-05-19T04:00:00Z"

}

},

{

"name": "Swag for Tweens",

"date_founded": {

"$date": "2012-11-01T04:00:00Z"

}

}

]

}CollectionsA collection is a group of documents. 通常,集合会存储具有相似内容的文档。

由于文档数据库具有灵活的架构,集合中的所有文档并不需要具有相同的字段。请注意,某些文档数据库提供模式验证,因此可以在需要时选择性地锁定该架构。

继续上面的示例,包含关于 Tom 信息的文档可以存储在名为“users”的集合中。可以向“users”集合中添加更多文档,以存储其他用户的信息。例如,下面存储有关 Donna 信息的文档可以添加到“users”集合中。

{

"_id": 2,

"first_name": "Donna",

"email": "donna@example.com",

"spouse": "Joe",

"likes": [

"spas",

"shopping",

"live tweeting"

],

"businesses": [

{

"name": "Castle Realty",

"status": "Thriving",

"date_founded": {

"$date": "2013-11-21T04:00:00Z"

}

}

]

}请注意,Donna 的文档不包含与 Tom 的文档相同的字段。“users”集合利用灵活的架构来存储每个用户的信息。

CRUD 操作文档数据库通常具有 API 或查询语言,可允许开发者执行 CRUD(创建、读取、更新和删除)操作。

创建:可以在数据库中创建文档。每个文档都有一个唯一的标识符。读取:可以从数据库中读取文档。API 或查询语言允许开发者使用文档的唯一标识符或字段值来查询文档。可以向数据库添加索引以提高读取性能。 *更新:现有文档可以全部或部分更新。删除:可以从数据库中删除文档。