我想插入一个变量,例如,
a = {1:2,3:4}
进入我的数据库,其特定的ID为“ 56”。从文档中很明显,我可以执行以下操作:
db.testcol.insert({"_id": "56", 1:2, 3:4})
但是,我无法找出任何方式来插入“ a”本身,并指定一个id。换句话说,我想做这样的事情
db.testcol.insert(a, "_id"="56")
但它不起作用。有可能吗?
解决方案
插入仅接受最终文档或文档数组,以及一个可选对象,该对象包含该集合的其他选项。
db.collection.insert(
<document or array of documents>,
{ // options
writeConcern: <document>,
ordered: <boolean>
}
)
您可能需要预先将_id添加到文档中,但要与创建文档分开:
a = {1:2,3:4}
使用点表示法:
a._id = 56;
使用方括号表示法:
a['_id'] = 56;
然后,插入:
db.testcol.insert(a);
结果:
{
"_id" : 56,
"1" : 2,
"3" : 4
}
顺便说一句,这实际上是将键值对添加到JavaScript中的对象的方式