我正在尝试在mongoDB database
中保存文档。但是我无法做到这一点。
以下是我的代码 -
db.system.js.save({ _id:"createMultipleUsers", value:
function() {
try {
var query="";
for(var i=0;i<2;i++ ) {
if(i !=0) {
query=query+",";
}
query=query+"{ _id: "+i+", mobileNumber: "+i+", emailID: \"email"+i+"@gmail.com\"}";
}
query="[ "+query+" ]";
//print(query);
db.User.insertMany(query);
} catch (e) {
print (e);
}
}
});
感谢任何帮助/提示。
提前谢谢。
答案 0 :(得分:0)
好吧,正如我在db.system.js.save
中看到的那样,您将字符串值传递给insertMany
,而建议传递给JSON文档 -
示例 - 强>
try {
db.products.insertMany( [
{ item: "card", qty: 15 },
{ item: "envelope", qty: 20 },
{ item: "stamps" , qty: 30 }
] );
} catch (e) {
print (e);
}
来源 - https://docs.mongodb.com/v3.2/reference/method/db.collection.insertMany/#examples
类似问题 - How to insert multiple documents at once in MongoDB through Java
在您的案例中
转换为JSON字典/文档后插入查询 -
//parse string query into json format.
db.User.insertMany(JSON.parse(query));
希望这会对您有所帮助:)
随意拍摄您的疑问。
答案 1 :(得分:0)
db.system.js.save({ _id:"createMultipleUsers", value:
function() {
try {
var query="";
for(var i=0;i<2;i++ ) {
if(i !=0) {
query=query+",";
}
query=query+"{ \"_id\": "+i+", \"mobileNumber\": "+i+", \"emailID\": \"email"+i+"@gmail.com\"}";
}
query="[ "+query+" ]";
print(query);
db.User.insertMany(JSON.parse(query));
} catch (e) {
print (e);
}
}
});