MongoDB:createCollection和参数

MongoDB:createCollection和参数,mongodb,Mongodb,我用了这句话 > db.createCollection("naveen",{capped:true,autoIndexId:true,size:53440099,max:1000}); db.newYear.insert({ name: 'john', age: 33, year: 2020 }); 我得到了这个: { "note" : "the autoIndexId option is deprecated and will be removed in a future

我用了这句话

> db.createCollection("naveen",{capped:true,autoIndexId:true,size:53440099,max:1000});
db.newYear.insert({ name: 'john', age: 33, year: 2020 });
我得到了这个:

{
    "note" : "the autoIndexId option is deprecated and will be removed in a future release",
    "ok" : 1
}
db.newYear.insert({ name: 'john', age: 33, year: 2020 });

删除
autoIndexId
参数将删除响应中的
注释

db.newYear.insert({ name: 'john', age: 33, year: 2020 });
从MongoDB 3.2版开始,当使用
createCollection
时,
autoIndexId
参数被弃用,因此您将收到此
注释
消息以及
确定
值,以使您意识到这一点

db.newYear.insert({ name: 'john', age: 33, year: 2020 });
版本3.4中删除了
autoIndexId
参数

db.newYear.insert({ name: 'john', age: 33, year: 2020 });
以下评论的回复在此回答中很有用:

db.newYear.insert({ name: 'john', age: 33, year: 2020 });

用什么来代替

db.newYear.insert({ name: 'john', age: 33, year: 2020 });

,他们似乎在敦促开发人员不要干预自动索引。

事实上,MongoDB不需要创建集合,当您插入文档时,MongoDB将自动为您创建集合,并为每个文档生成唯一的Id

db.newYear.insert({ name: 'john', age: 33, year: 2020 });
示例:

db.createCollection("naveen",{capped:true,autoIndexId:true,size:53440099,max:1000}); //don't
db.newYear.insert({ name: 'john', age: 33, year: 2020 });
您不需要创建集合,只需要插入一个直接文档,它不像SQL,而是JSON

{ name: 'john', ...}
db.newYear.insert({ name: 'john', age: 33, year: 2020 });
像这样,插入文档而不创建集合,它会自动为您生成集合

db.newYear.insert({ name: 'john', age: 33, year: 2020 });

请你解释一下你想对代码做什么,预期结果是什么等?并替换为什么?@rednoyz它没有被替换,而且他们似乎在敦促用户不要干预自动索引。在我的回答中附加这个解释。它不会像问题所问的那样创建一个封顶集合