文档是什么?文档是文档数据库中的记录。文档通常存储有关一个对象及其相关元数据的的信息。文档以“字段-值”对的形式存储数据。值可以是各种类型和结构,包括字符串、数字、日期、数组或对象。文档可以存储为 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 或查询语言允许开发者使用文档的唯一标识符或字段值来查询文档。可以向数据库添加索引以提高读取性能。 *更新:现有文档可以全部或部分更新。删除:可以从数据库中删除文档。
!