MongoDB创建与删除集合(collection)

MongoDB创建与删除集合(collection)

(一)创建集合

MongoDB的集合相当于关系型数据库的表,不过在创建集合时,执行指定集合名称与选项即可,无需指定类似RDBMS的列名。

创建集合的语法为:

db.createCollection(name,option)

其中,name是集合的名称,option是集合的配置选项。option参数是可选的,可以使用以下参数:

字段
类型描述cappedBoolean如果为true,则启用封闭的集合,上限是固定大小的集合,在到达最大大小时自动覆盖最旧的条目。如果指定为true。则还需指定size参数autoIndexIdBoolean如果为true,则在_id列自动创建索引size数字指定上限集合的最大尺寸(以字节为单位),与capped配合使用max数字指定上限集合中允许的最大文档数

备注:在插入文档时,先检查上限集合capped字段size大小,然后再检查max字段。

例子1 : 创建集合mycoll

> use lijiamandb
switched to db lijiamandb
> db.createCollection("mycoll");
{ "ok" : 1 }
> 
> 
> show collections;
mycoll

例子2 :创建集合mycoll2,设置文档上限为100M,最大文档个数为10000。

> db.createCollection("mycoll2",{capped:true,autoIndexId:true,size:104857600,max:100})
{
    "note" : "the autoIndexId option is deprecated and will be removed in a future release",
    "ok" : 1
}

备注:autoIndexId是过时参数,后面将被移除,尽量别用。

除了上面使用db.createCollection(name,option)方法创建集合外,还可以在插入文档时直接创建集合:

> db.mycoll3.insert({"name":"test"});
WriteResult({ "nInserted" : 1 })
> show collections;
mycoll
mycoll2
mycoll3

(二)删除集合

删除集合的语法为:

db.<connection_name>.drop()

例子 : 删除集合mycoll3

> show collections
mycoll
mycoll2
mycoll3

> db.mycoll3.drop()
true

> show collections
mycoll
mycoll2

如果删除成功,drop()方法将返回true,否则返回false。

【完】