MongoDB 创建集合

  • 创建集合

    在本章中,我们将看到如何使用MongoDB创建集合。
  • createCollection()方法

    MongoDB db.createCollection(name,options)用于创建集合。
    语法
     
    db.createCollection(name, options)
    
    在命令中,name是要创建的集合的名称。options是一个文档,用于指定集合的​​配置。
    • name - [Stirng] - 要创建的集合的名称
    • options - [Document] (可选)指定有关内存大小和索引的选项
    Options参数是可选的,因此您只需指定集合的​​名称。以下是您可以使用的选项列表-
    • capped - [ Boolean] (可选)如果为true,则启用上限集合。 上限集合是一个固定大小的集合,当其达到最大大小时会自动覆盖其最早的条目。 如果指定true,则还需要指定size参数。
    • autoIndexId - [Boolean] (可选)如果为true,则在_id字段上自动创建索引。s默认值为false。
    • size - [ number] (可选)指定上限集合的最大大小(以字节为单位)。 如果capped为true,则还需要指定此字段。
    • max - [number] (可选)指定上限集合中允许的最大文档数。
    更为详细的参数列表说明请参考:https://docs.mongodb.com/manual/reference/method/db.createCollection/index.html
    插入文档时,MongoDB首先检查上限集合的size字段,然后检查max字段。
    示例
    不带options的createCollection()方法的基本语法如下-
     
    >use test
    switched to db test
    >db.createCollection("mycollection")
    { "ok" : 1 }
    >
    
    您可以使用命令show collections检查创建的集合。
     
    > show collections
    mycollection
    
    以下示例显示了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.jc2182.insert({"name" : "jc2182"})
    WriteResult({ "nInserted" : 1 })
    > show collections
    jc2182
    mycollection