码迷,mamicode.com
首页 > 数据库 > 详细

db.students.batchInsert is not a function :@(shell):1:1

时间:2018-02-26 23:16:48      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:nbsp   odi   nts   owa   bat   AC   实现   error   cer   

按照《mongdb权威指南》当使用version 3.4.1版本的mongodb,其中使用batchInsert函数进行对students集合进行批量插入  

db.students.batchInsert([{"classid" : 1, "age" : 20, "name" : "kobe"},  
{"classid" : 1, "age" : 23, "name" : "nash"}, 
{"classid" : 2, "age" : 18, "name" : "james"},  
{"classid" : 2, "age" : 19, "name" : "wade"},  
{"classid" : 2, "age" : 19, "name" : "bosh"},  
{"classid" : 2, "age" : 25, "name" : "allen"},  
{"classid" : 1, "age" : 19, "name" : "howard"},  
{"classid" : 1, "age" : 22, "name" : "paul" },  
{"classid" : 2, "age" : 24, "name" : "shane"}]);  

插入失败,报如下错误:

2018-02-26T21:08:40.382+0800 E QUERY [main] TypeError: db.students.batchInsert is not a function :@(shell):1:1

原因:书中示例batchInsert是按照version:2.4.0运行的,到本版本已经废弃该方法

解决方法:直接使用insert实现对students集合批量插入

db.students.insert([{"classid" : 1, "age" : 20, "name" : "kobe"},  
{"classid" : 1, "age" : 23, "name" : "nash"}, 
{"classid" : 2, "age" : 18, "name" : "james"},  
{"classid" : 2, "age" : 19, "name" : "wade"},  
{"classid" : 2, "age" : 19, "name" : "bosh"},  
{"classid" : 2, "age" : 25, "name" : "allen"},  
{"classid" : 1, "age" : 19, "name" : "howard"},  
{"classid" : 1, "age" : 22, "name" : "paul" },  
{"classid" : 2, "age" : 24, "name" : "shane"}]);  

db.students.find()

控制台输出如下,插入成功


// Command #1:
// Execution time: 0.0s
// Result:
BulkWriteResult({
    "writeErrors" : [ ],
    "writeConcernErrors" : [ ],
    "nInserted" : 9,
    "nUpserted" : 0,
    "nMatched" : 0,
    "nModified" : 0,
    "nRemoved" : 0,
    "upserted" : [ ]
})


// Command #2:
// db.students.find()
// Execution time: 0.0s
// Result:
{ "_id" : ObjectId("5a940a3f379afc334959cacc"), "classid" : 1, "age" : 20, "name" : "kobe" }
{ "_id" : ObjectId("5a940a3f379afc334959cacd"), "classid" : 1, "age" : 23, "name" : "nash" }
{ "_id" : ObjectId("5a940a3f379afc334959cace"), "classid" : 2, "age" : 18, "name" : "james" }
{ "_id" : ObjectId("5a940a3f379afc334959cacf"), "classid" : 2, "age" : 19, "name" : "wade" }
{ "_id" : ObjectId("5a940a3f379afc334959cad0"), "classid" : 2, "age" : 19, "name" : "bosh" }
{ "_id" : ObjectId("5a940a3f379afc334959cad1"), "classid" : 2, "age" : 25, "name" : "allen" }
{ "_id" : ObjectId("5a940a3f379afc334959cad2"), "classid" : 1, "age" : 19, "name" : "howard" }
{ "_id" : ObjectId("5a940a3f379afc334959cad3"), "classid" : 1, "age" : 22, "name" : "paul" }
{ "_id" : ObjectId("5a940a3f379afc334959cad4"), "classid" : 2, "age" : 24, "name" : "shane" }

db.students.batchInsert is not a function :@(shell):1:1

标签:nbsp   odi   nts   owa   bat   AC   实现   error   cer   

原文地址:https://www.cnblogs.com/zjfjava/p/8476123.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!