我想插入一个变量,比如说,
a = {1:2,3:4}
使用特定ID“56”进入我的数据库。从文档中可以清楚地看出我可以做到以下几点:
db.testcol.insert({"_id": "56", 1:2, 3:4})
但是,我无法找出任何方式插入“a”本身,指定一个id。换句话说,我想做这样的事情
db.testcol.insert(a, "_id"="56")
但它不起作用。它有可能吗?
答案 0 :(得分:2)
Insert仅接受最终文档或文档数组,以及包含该集合的其他选项的可选对象。
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中为对象添加键值对。