2

我有一个 bash 脚本,我从中运行 js 文件,如果它不存在,该文件负责用新文件更新表。

但是在执行 bash 脚本时,我收到以下错误。

Wed Jul  3 00:05:18 Error: error doing update (anon):1552
failed to load: logincount.js

这是一个简单的 js 文件,它将更新 userCollection 表中名为昨天的字段

 var d = new Date();
    var curr_date = d.getDate()-1;
    var curr_month = d.getMonth() + 1; 
    var curr_year = d.getFullYear();
    var yesterday = curr_year + "-" + curr_month + "-" + curr_date;
    db.userCollection.update({yesterday : {$exists : false}}, {$set: {yesterday : yesterday}},false,true)

如果上面的js文件有问题,请告诉我这个错误的原因是什么?

请指教,提前谢谢

如果我删除最后一行,我忘了更新一件事,下面的行

db.userCollection.update({yesterday : {$exists : false}}, {$set: {yesterday : yesterday}},false,true)

它没有任何抱怨。我想如果昨天提交的文件应该是全球性的还是什么?如果是,那么我怎样才能使该字段成为全球性的?

4

1 回答 1

1

未定义变量 db。看看这里:http ://docs.mongodb.org/manual/tutorial/write-scripts-for-the-mongo-shell/

你可以这样做:

conn = new Mongo();
db = conn.getDB("myDatabase");

或这个:

db = connect("localhost:27020/myDatabase");
于 2013-11-13T00:27:06.977 回答