mongodb从数组插入失败

时间:2012-12-10 23:23:58

标签: javascript json mongodb insert bson

我在ubuntu服务器上使用MongoDB。 我想生成我的文档并将它们存储在一个数组中。之后,我想将这些文档插入到我的集合中,但不知何故,集合总是空的。重要的是,数据生成与存储分离以进行测量。我正在使用javascript。 但是,这是一些代码:

for (i=0; i<amount; i++)
{                                           
doc = "datetime:" + Math.floor((1262300400+Math.random()%(1356994799-1262300400+1))) + sourceport: " + Math.floor((Math.random()*30000)+2000) ;
myarray[i]=doc;
}

...

for (n=0;n<=myarray.length-1;n++)
    {
        obj_doc = eval('{' + myarray[n] +'}');
        eval('var obj='+myarray[n]);
        obj_doc = '{' + myarray[n] +'}';
        db.mycol.insert(obj_doc);
    }

如果没有rnd()函数,它甚至无法工作。 db.mycol.stats()始终返回“count:0”

1 个答案:

答案 0 :(得分:1)

构建要作为对象插入的文档,而不是字符串和eval

for (i=0; i<amount; i++) {                                           
    doc = {
        datetime: Math.floor((1262300400+Math.random()%(1356994799-1262300400+1))),
        sourceport: Math.floor((Math.random()*30000)+2000)
    };
    myarray[i]=doc;
}

...

db.mycol.insert(myarray);