在本章中,我们将看到如何使用MongoDB创建集合。
db.createCollection(name, options)用于 MongoDB 创建集合。
createCollection()命令的基本语法如下-
db.createCollection(name, options)
在命令中,name是要创建的集合的名称。Options是文档,用于指定集合的配置。
参数 | 类型 | 描述 |
---|---|---|
Name | 字符串 | 要创建的集合的名称 |
Options | 文档 | (可选) 指定有关内存大小和索引的选项 |
Options参数是可选的,因此您只需指定集合的名称。以下是您可以使用的选项列表-
字段 | 类型 | 描述 |
---|---|---|
capped | 布尔型 | (可选)如果为true,则启用上限集合。上限集合是一个固定大小的集合,当其达到最大大小时会自动覆盖其最早的条目。 如果指定为true,还需要指定size参数。 |
autoIndexId | 布尔型 | (可选) 如果为true,则自动在_id字段上创建索引。s默认值为false。 |
size | 数字 | (可选)指定上限集合的最大大小(以字节为单位)。如果capped为true,则还需要指定此字段。 |
max | 数字 | (可选)指定上限集合中允许的最大文档数。 |
插入文档时,MongoDB首先检查上限集合的size字段,然后检查max字段。
createCollection()没有选项(Options)的方法的基本语法如下-
>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.nhooo.insert({"name" : "nhooo"}), WriteResult({ "nInserted" : 1 }) >show collections mycol mycollection system.indexes nhooo >