db object already connecting, open cannot be called multiple times - CNode技术社区

db object already connecting, open cannot be called multiple times
发布于 11 年前 作者 adminparry 4781 次浏览 最后一次编辑是 9 年前

新学mongodb 出现这个问题 看了网上的文章 但是有没有解决这个问题的好方法 求大神指导

5 回复

忘记close了。。。。

连接一次就行了,不要多次连接

求详细,我的代码: db.open(function(err,client){ if(err) { response.write(’{err: 1, msg: "数据库出错"}’); response.end(); } var collection=new mongodb.Collection(client,‘user’);

 collection.find({name:get.user}).toArray(function(err,data){
 if(data.length>0){
 response.write('{err: 1, msg:用户名存在}');
 response.end();
 console.log(doc);
 }else{
 collection.insert({name:get.user,pass:get.pass},{safe:true},function(err, data){
 if(err){
 response.write('{err: 1, msg: "数据库出错"}');
 response.end();
 }
 response.write('{err: 0, msg:注册成功}');
 response.end();
 });
 }
 });
 });

// Establish connection to db db.open(function(err, db) { if(err) { return callback(err); }

// Authenticate
db.authenticate('<username>', '<pwd>', function(err, result) {
 if(result) {
 // Fetch a collection
 db.collection('<collection>', function(err, collection) {
 if(err) {
 // Close db connection
 db.close();
 return callback(err);
 }
 collection.insert(entity, {safe: true}, function(err, result) {
 // Close db connection
 db.close();
 callback(err, result);
 });
 });
 } else {
 // Close db connection
 db.close();
 callback(utils.error('Auth Error'));
 }
});

}); 给你看看我以前写过的吧,你应该是之前在打开数据库连接的时候,之后忘记close了

回到顶部

AltStyle によって変換されたページ (->オリジナル) /