MongoDB以BSON格式的文档形式存储。Collections中存储数据记录,Collections在Databases中。
在MongoDB中,databases保存文档的集合(Collections)。
在Mongo Shell中,通过使用 use <db>
命令来选中database,就像下面的例子:
use myDB
如果database不存在,MongoDB会在第一次为database存储数据的时候创建。因此,你可以直接切换到一个不存在的数据库,然后执行下面的语句:
use myNewDB db.myNewCollection1.insert( { x: 1 } )
insert()
操作会创建名为myNewDB的database和名为myNewCollection1的collection(如果他们不存在的话)。
MongoDB在collections中存储文档(documents)。Collections类似于关系型数据库中的表(tables)。
如果collection不存在,MongoDB会在第一次为collection存储数据的时候创建。
db.myNewCollection2.insert( { x: 1 } ) db.myNewCollection3.createIndex( { y: 1 } )
无论是insert()还是createIndex()操作,都会创建它们各自指定的收集,如果他们不存在的话。
MongoDB提供db.createCollection()方法来显式创建一个collection,同时还能设置各种选项,例如:设置最大尺寸和文档校验规则。如果你没有指定这些选项,那么你就不需要显式创建collection,因为MongoDB会在你创建第一个数据的时候自动创建collection。
若要修改这些collection选择,可查看 collMod 。
3.2.x版本新增内容。
默认情况下,collection不要求文档有相同的结构;例如,在一个collection的文档不必具有相同的fields,对于单个field在一个collection中的不同文档中可以是不同的数据类型。
从MongoDB 3.2开始,你可以在对collection进行update和insert操作的时候执行文档校验规则。具体可参见 文档验证的详细信息 。
官方原文: https://docs.mongodb.com/manual/core/databases-and-collections/