MongoDB 创建集合学习笔记

什么是 MongoDB 集合?

在 MongoDB 中,数据存储在集合(collections)中。集合类似于关系型数据库中的表(table),但又有所不同。集合是一组没有固定结构的文档,这些文档可以存储在一个集合中,每个文档都可以有不同的结构。

创建 MongoDB 集合

创建 MongoDB 集合非常简单,只需要使用 db.createCollection() 命令即可。以下是创建集合的基本语法:

Copy Code
db.createCollection(name, options)

其中,name 参数表示集合名称,options 参数可选,用于指定集合配置选项。

例如,我们可以创建一个名为 mycollection 的集合,如下所示:

Copy Code
> use mydatabase switched to db mydatabase > db.createCollection("mycollection") { "ok" : 1 }

这将在当前数据库中创建一个名为 mycollection 的集合。如果集合创建成功,将会返回 { "ok" : 1 }

我们还可以指定一些选项来定义集合的行为,例如设置集合的最大大小、索引选项等等。例如,下面的命令创建了一个名为 mycollection 的集合,并设置了一个最大为 100MB 的大小限制:

Copy Code
> db.createCollection("mycollection", { capped: true, size: 100000000 }) { "ok" : 1 }

示例

接下来,我们将通过一个示例来演示如何创建和使用 MongoDB 集合。

首先,我们需要连接到 MongoDB 数据库服务器。在命令行中输入以下命令:

Copy Code
> mongo

然后,我们将切换到我们要使用的数据库,例如 mydatabase

Copy Code
> use mydatabase

现在,我们可以创建一个名为 mycollection 的集合,如下所示:

Copy Code
> db.createCollection("mycollection") { "ok" : 1 }

如果集合创建成功,将会返回 { "ok" : 1 }

接下来,我们可以向集合中插入一些文档。例如,我们可以创建一个包含学生信息的文档,并将其插入到集合中:

Copy Code
> db.mycollection.insert({ "name": "张三", "age": 18, "score": { "math": 80, "english": 90 } }) WriteResult({ "nInserted" : 1 })

现在,我们可以使用 db.mycollection.find() 命令来查看集合中的所有文档:

Copy Code
> db.mycollection.find() { "_id" : ObjectId("60b8f1c16af52816e38fc0d5"), "name" : "张三", "age" : 18, "score" : { "math" : 80, "english" : 90 } }

这将会返回一个包含我们刚刚插入的文档的记录。

总结一下,MongoDB 中的集合是一种非常灵活的数据结构,可以存储任意类型的文档。通过使用 db.createCollection() 命令,我们可以轻松地创建一个新的集合,然后使用 db.collection.insert() 命令向集合中添加文档。