全书目录

第十九篇:MongoDB 完全指南 —— 弹性档案仓宇宙

第二章:Database / Collection / Document —— 仓区、档案柜、档案袋

1 分钟 244 字 第 353 / 962 个阅读单元

这是 MongoDB 最基础的三层结构。

  • Database:一片库区,比如 city_archive
  • Collection:一个档案柜,比如 citizens
  • Document:一份档案袋,比如某位市民的完整资料

代码先看一眼:

javascript
use city_archive

db.citizens.insertOne({
  name: "林夏",
  age: 29,
  profession: "architect"
})

插入后,一份文档大概长这样:

javascript
{
  _id: ObjectId("..."),
  name: "林夏",
  age: 29,
  profession: "architect"
}

这里的 _id 就像档案袋编号:

  • 每个文档必须唯一
  • 如果你不写,MongoDB 通常会自动生成
  • 默认会为 _id 建立索引

可以把这三层理解成:

text
Database   = 一片库区
Collection = 一组同类档案柜
Document   = 一份独立档案袋
Field      = 档案袋中的字段

一个更贴近业务的例子:

javascript
use school_archive

db.students.insertOne({
  name: "周舟",
  grade: "高二",
  hobbies: ["篮球", "摄影"],
  contact: {
    phone: "13800000000",
    city: "杭州"
  }
})

这不是一行表记录,而是一份“自带上下文”的完整学生档案。