MongoDB创建集合,如MySQL CREATE TABLE

时间:2016-03-28 07:25:16

标签: php mongodb zend-framework2

我使用MongoDB替代MySQL中的Zend Framework 2,我想知道,MongoDB中是否存在任何类似于CREATE TABLE语句的语句,以编程方式创建集合,大多数最好在ZendFramework 2之内?或者在使用MongoDB时创建数据库和集合时需要采取的方法是什么?

2 个答案:

答案 0 :(得分:1)

只要您尝试将文档保存到MongoDB,就会自动在集合中创建集合。

如果您确实想要一个空集合,请尝试插入任何文档来创建它,然后删除该文档。但通常最好让MongoDB做它的事情。

我希望这会有所帮助。

答案 1 :(得分:1)

在MongoDB中,首次在文档中插入文档时会隐式创建集合。不过,您可以使用命令db.createCollection()使用MongoDB显式创建集合。此命令还允许您传递指定集合性质的选项,例如它是否为上限集合,应该具有哪种验证,索引选项等.MongoDB 3.2的语法如下:

db.createCollection(<name>, { capped: <boolean>,
                              autoIndexId: <boolean>,
                              size: <number>,
                              max: <number>,
                              storageEngine: <document>,
                              validator: <document>,
                              validationLevel: <string>,
                              validationAction: <string>,
                              indexOptionDefaults: <document> });

有关详情,请访问文档中的this page

关于数据库创建,从MongoDB 3.2开始,没有明确创建数据库的方法。因此,为了创建数据库,您需要将文档插入其中的集合,或者使用db.createCollection()直接创建集合。