Mongodb 简明教程

MongoDB - Create Collection

在本章中,我们将介绍如何使用 MongoDB 创建集合。

The createCollection() Method

MongoDB db.createCollection(name, options) 用于创建集合。

Syntax

createCollection() 命令的基本语法如下:

db.createCollection(name, options)

在命令中, name 是要创建的集合的名称。 Options 是一个文档,用于指定集合的配置。

Parameter

Type

Description

Name

String

要创建的集合的名称

Options

Document

(可选)指定关于内存大小和索引的信息

“选项”参数是可选的,因此您只需要指定集合的名称。以下是您可以使用的选项列表:

Field

Type

Description

capped

Boolean

(可选)如果为 true,则启用带上限的集合。带上限的集合是一个固定大小的集合,当其达到最大大小时会自动覆盖其最旧的条目。 If you specify true, you need to specify size parameter also.

autoIndexId

Boolean

(可选)如果为 true,则会在 _id 域上自动创建索引。s 默认值为 false。

size

number

(可选)为带上限的集合指定最大大小(以字节为单位)。 If capped is true, then you need to specify this field also.

max

number

(可选)指定带上限的集合中允许的最大文档数量。

在插入文档时,MongoDB 首先会检查带上限的集合的 size 域,然后检查 max 域。

Examples

createCollection() 方法基本语法(无选项):

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

您可以使用命令 show collections 检查创建的集合。

>show collections
mycollection
system.indexes

以下示例显示 createCollection() 方法的语法,包括几个重要选项 −

> db.createCollection("mycol", { capped : true, autoIndexID : true, size : 6142800, max : 10000 } ){
"ok" : 0,
"errmsg" : "BSON field 'create.autoIndexID' is an unknown field.",
"code" : 40415,
"codeName" : "Location40415"
}
>

在 MongoDB 中,您无需创建集合。当您插入某个文档时,MongoDB 会自动创建集合。

>db.tutorialspoint.insert({"name" : "tutorialspoint"}),
WriteResult({ "nInserted" : 1 })
>show collections
mycol
mycollection
system.indexes
tutorialspoint
>