2017-09-25 85 views
0

我試圖將數據插入到mongodb集合中。我在一個循環,在每次迭代中得到下面的示例數據運行,Mongodb如何從javascript批量插入

13:24:24:007,Peter,male,3720,yes 
13:24:24:007,John,female,1520,yes 
13:24:24:023,John,female,9720,yes 
13:24:24:023,Mario,male,9820,no 
13:24:24:023,Katy,male,4320,no 
13:24:24:038,John,male,3620,no 

這些數據是字段名,

currenttime, custname, gender, custid, ismember 

我想與適當的字段名稱將數據插入到MongoDB的集合。我不知道如何在我的要求中使用mongodb批量插入。我可以把這個數據放在一個數組變量中(用新行溢出),並將這個數組的每個項目都帶到另一個數組(通過逗號分隔),並在循環中創建一個對象,最後插入一個數組,將該對象轉換爲mongodb集合。但是這種方法看起來非常簡單和緩慢。我堅信必須有更好的方式來做到這一點。請建議。

+0

https://docs.mongodb.com/manual/reference/method/db.collection.insertMany/ –

+0

你可能想看看[mongoimport](https://docs.mongodb.com/manual /reference/program/mongoimport/index.html) – chridam

+0

我還沒有試過mongoimport。將現在檢查它。有一個問題,我們可以使用mongoimport來連續增長的文件嗎? – sand

回答

0

如果運行循環之前的結果有點像這樣,你可以直接使用插入函數插入數組。

var data= [{currenttime:13:24:24:007, 
     custname:"Peter", 
     gender:"male", 
     custid:"3720", 
     ismember:"yes"}, 
     {currenttime:13:24:24:007, 
     custname:"John", 
     gender:"male", 
     custid:"1520", 
     ismember:"yes"} 
    ] 

    db.collection.insert(data,function(err,data){ 
     if(!err){ 
      //send sucess message 
     }else{ 
     //send a failure message 
     } 
})