MongoDB检索所有文档

时间:2016-03-17 15:56:57

标签: node.js mongodb

我试图从mongoDB获取所有文档,我的代码如下:

MongoClient.connect('mongodb://localhost/catalog', function(err, db) {
    db.open(function(err, db) {
        var cursor = db.collection('products').find(function(err, cursor) {
            cursor.each(function(err, doc) {
                console.log(doc);
            });     
        });
    });
});

虽然我没有打印出任何东西,但我无法弄清问题在哪里。如果我放置一个查询字符串(即find({" name":" Samsung note"})),它可以正常工作并返回产品。

我的错误在哪儿?

TNX!

更新:即使我要求购买单个产品也有问题,cursor.count()什么都不返回。

db.open(function(err, db) {
        db.collection('products').find({"upc": "027242799219"}, function(err, cursor) {
            var cnt = cursor.count();
            console.log(cnt);     
        });
    });

update(take 2):我转到了另一个mongoDB .find()问题并从答案中复制了代码:

MongoClient.connect('mongodb://localhost/catalog', function(err, db) {
    theDB = db;

    db.open(function(err, db) {
        if (err) return console.log('error opening db, err = ', err);
        console.log("db opened!");
        db.collection('products', function(err, collection) {
            if (err) return console.log('error opening users collection, err = ', err);
            collection.find().limit(100).toArray(function(err, results) {
                if (err) return console.log('error initiating find on users, err = ', err);
                else    
                    {
                        for(i = 0; i < 100; i++)
                             {
                                 console.log(results[i]);
                             }
                        db.close();
                        console.log("CLOSED");
                    }                         
                });
            });
        });
    });

现在...打印结果,但是如果我在console.log上放置断点或者我尝试用结果[i]做某事(比如把它写成弹性)应用程序没有响应。我可以在任务管理器中看到它使用越来越多的CPU /内存而没有真正命中我的断点。

什么是什么?

0 个答案:

没有答案