0

我在 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”

4

1 回答 1

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);
于 2012-12-11T01:20:05.140 回答