mongodb db.eval()

1014 ワード

dbを使用します.eval()は、Mongoのサービス側でjavascriptスクリプトを実行し、結果を返すことができます.
 
 
D:\mongodb_64-2.6.4\bin>mongo.exe localhost:27017
MongoDB shell version: 2.6.4
connecting to: localhost:27017/test
> db.eval("return 'hello';");
hello
> db.eval("return 'hello';");
hello
> db.eval("function(){return 'hello';}");
hello

 
 
複数のパラメータを配列形式で渡すことができます
 
> db.eval("function(name){return 'hello'+name;}",['chenhua']);
hellochenhua

 
> db.eval("function(name,str){return 'hello  '+name+''+str;}",['lilei','how are
you !!']);
hello  lilei,how are you !!undefined
>

もちろんこのような+番号を用いる方式は注入可能であり,変数の役割ドメインを限定する必要がある.
 
またdbを用いることもできる.eval(「print('test'))デバッグ用のログを記録